summaryrefslogtreecommitdiff
path: root/TODO.md
blob: 5a68b7d428eb2d7e08c1e446d8e955f3e29024b1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
  • [ ] Multiple rendering passes
    • [ ] Effects using stencil buffer
  • [ ] Remove possible edge cases in ECS component storage
    • [ ] A Query<()> yields all components. Should this be the behaviour?
  • [ ] Improve ECS component storage performance
    • [ ] Give archetypes edges for faster component addition & removal
    • [ ] Store components of the same kind in the same memory allocation (not boxed)
  • [ ] Investigate what happends when a entity has all of it's components removed.
  • [ ] Audio
  • [ ] Transparent/translucent models
  • [ ] Animations
  • [ ] Physics
  • [ ] Rotation (using quaternions)
  • [ ] Add support for entity tags in ECS framework
  • [ ] Make OpenGL resource (texture, VBO, VAO) structs not implement Drop. This will probably make some parts of the code cleaner
  • [ ] Add implementation of GJK algorithm for collision detection
  • [ ] Add a way to not have to check every collidable object for collision. Something like binary space partitioning would work
  • [ ] Figure out way to handle collision of small fast moving objects
  • [ ] Improve vertex code.
  • [ ] Add support for optionally rendering objects without a projection
  • [ ] Add shadow mapping
  • [ ] Use Blinn-phong lighting instead of phong lighting
  • [x] Support for multiple textures
  • [x] Non-hardcoded projection settings
  • [x] Model importing
  • [x] Multiple light sources
  • [x] Fix the ECS member crate "extension" example
  • [x] Make ECS framework use archetypes
  • [x] Add support for adding components to entities at runtime in ECS framework
  • [x] Add support for removing components from entities at runtime in ECS framework
  • [x] Add support for entity relationships in ECS framework
  • [x] Add component events (removal & addition) in ECS framework
  • [x] Make renderer not create new buffers each frame
  • [x] Remove position field from Camera component
  • [x] Add support for entities with no components
  • [x] Fix OpenGL warning "Vertex shader in program 3 is being recompiled based on GL state". It started at commit 526edc6f4cb5f29d17e2fe384e316236c033fccd. Fixed by c4686c2992417545e7a05a6a40ee9f1a8bbf3b96
  • [x] New texture IDs are created for no reason. Crashes when on texture ID 31
  • [x] engine::file_format:wavefront::obj::Obj::to_mesh seems to produce meshes with pointless vertex indices since it flat maps all face vertices