From adb47d810cf9c61b01e90aa8d1b7c6ba58986a50 Mon Sep 17 00:00:00 2001 From: bailwillharr Date: Sat, 21 Jan 2023 18:02:38 +0000 Subject: [PATCH] update to do list --- TODO | 36 ++++++++++++++++++++++++++---------- 1 file changed, 26 insertions(+), 10 deletions(-) diff --git a/TODO b/TODO index b9a529a..aa2c371 100644 --- a/TODO +++ b/TODO @@ -1,20 +1,36 @@ -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. +----- TO DO LIST ----- + +Add support for shadows and other complex lighting. Also add post-processing. + +The engine needs an event/message system, this will be helpful for collision +detection. Also helpful for general gameplay logic. + +Add AABB colliders, sphere colliders, and mesh colliders. + +Support animations and skinned meshes. At some point, add game controller support. Make sure it works well with the -'Input' class. +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 ----- 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). -Add support for shadows and other complex lighting. Also add post-processing. - -For font rendering, put all ASCII characters in one large texture and use -'instancing' (and uniform buffer objects?) to reduce draw calls. - # VULKAN # The entire vulkan backend needs redesigning without so many classes + +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.