engine/TODO

41 lines
1.5 KiB
Plaintext
Raw Normal View History

2023-01-21 18:02:38 +00:00
----- TO DO LIST -----
2023-03-26 12:26:17 +00:00
vulkan/device.cpp: report what is missing when a device fails to be found.
Only select physical device 0 to simplify code.
2023-02-09 15:29:19 +00:00
Supported different event 'kinds' (postPhysics, preRender, postRender etc)
TODO now: the collision system doesn't use the "isTrigger" bool properly.
2023-01-21 18:02:38 +00:00
Add support for shadows and other complex lighting. Also add post-processing.
Add AABB colliders, sphere colliders, and mesh colliders.
Support animations and skinned meshes.
2022-09-07 09:02:01 +00:00
At some point, add game controller support. Make sure it works well with the
2023-01-21 18:02:38 +00:00
InputManager class.
* Was implemented in the past: *
For font rendering, put all ASCII characters in one large texture and use
'instancing' (and uniform buffer objects?) to reduce draw calls.
----- DONE -----
2022-09-07 09:02:01 +00:00
For mesh rendering, give every mesh-renderer a ShaderMaterial which, depending
on the shader, defines how the mesh reacts to light and also stores a reference
to its texture(s). -- Also make a model loader that works with multiple meshes
(by creating many objects).
2023-02-09 15:23:23 +00:00
The engine needs an event/message system, this will be helpful for collision
detection. Also helpful for general gameplay logic.
2022-10-09 15:35:50 +00:00
The entire vulkan backend needs redesigning without so many classes
2023-01-21 18:02:38 +00:00
Place all instances of a particular component in contiguous memory: I.e., a
scene holds many std::vectors, one for each type of component. These vectors are
looped through every frame. This should optimise things by improving the memory
layout of the program, significantly reducing cache misses.