Update TODO

This commit is contained in:
2024-10-15 22:06:08 +02:00
parent 7dff8076b9
commit 8f28a62817

27
TODO.md
View File

@@ -3,23 +3,25 @@
## Core ## Core
- ~~Add and implement interfaces for systems (ISystem, IUpdatableSystem, etc.)~~ - ~~Add and implement interfaces for systems (ISystem, IUpdatableSystem, etc.)~~
- Minimize amount of possible null references. - ~~Minimize amount of possible null references.~~
- TextDataResource providing a convenient wrapper around TOML data files. - ~~TextDataResource providing a convenient wrapper around TOML data files.~~
- Add documentation for common classes. - ~~Add documentation for common classes.~~
- ~~Hot reloading of resources.~~ - ~~Hot reloading of resources.~~
## I/O ## I/O
- Use GUIDs and string ID maps for fetching resources instead of string IDs alone. - ~~Use GUIDs and string ID maps for fetching resources instead of string IDs alone.~~
- (stretch goal) Make async API for ResourceManager - Reimplement unloading.
- (stretch goal/1.0) Streamed resource loading - Finalize ResourceManager and ResourceLoader APIs for 1.0.
- (stretch goal) Virtual file system - (stretch goal) Streamed resource loading.
- (stretch goal) Add async API for ResourceManager.
- (stretch goal) Virtual file system.
## Serialization ## Serialization
- Serialize attribute. - Serialize attribute.
- Add automatic serialization of resources through code generation and System.Text.Json. - Add automatic serialization of resources through code generation and System.Text.Json.
- Provide means for fetching key/value configuration (INI? TOML?) - ~~Provide means for fetching key/value configuration (INI? TOML?)~~
- Expose some sort of ConfigFile class for safe key/value configuration fetching. - Expose some sort of ConfigFile class for safe key/value configuration fetching.
## Rendering ## Rendering
@@ -27,7 +29,7 @@
- ~~API for drawing textured quads~~ - ~~API for drawing textured quads~~
- ~~Camera API~~ - ~~Camera API~~
- Arbitrary mesh rendering API. - Arbitrary mesh rendering API.
- (1.0) Create WebGPU renderer (StandardRenderer) - Create WebGPU renderer (StandardRenderer)
## Audio ## Audio
@@ -38,11 +40,14 @@
- ~~Asset manager~~ - ~~Asset manager~~
- ~~Separate engine and game into separate projects~~ - ~~Separate engine and game into separate projects~~
- ~~Particle system~~ - Particle system 2.0
- Reduce the size of Particle struct by infering most parameters through lifetime.
- Reduce cache misses by utilizing SoA.
- SIMD acceleration.
## SceneGraph module ## SceneGraph module
- ~~Layers (sorting mechanism)~~ - Layers (sorting mechanism)
- Full overhaul using Entity Component architecture (not to be mistaken with ECS). - Full overhaul using Entity Component architecture (not to be mistaken with ECS).
- Save/load scenes from file - Save/load scenes from file