Internal Changelog:
- Split assets from engine so that rres_packer do not need to implement
mempools
- The idea is that mempool is incomplete and requires implementation of
the mempool in scenes.
- Components are usually game-specific, so this is the first step to
decouple it from the engine.
This allows scene to have children but can only have one parent
There is only one focused scene to get input
Update and Render order is child first and next
Internal Changelog:
- Use string-int mapping for assets tracking
- static alloc assets (so there is a hard limit for now)
- Add simple assets test code
- Implement functions to load in assets
- Current assets:
- Texture + Sprites
- Sound
- Font
Changelog:
- Rename scene.* to engine.* as the game engine is tied to the
base scene struct
- Combine *_impl.h into a single header
- Rename scene implementation source code file
- Add GameEngine struct and SceneState enum
Changelog:
- Incorporate raygui
- raygui works but I would prefer to separate out detection logic
and rendering. So, adapt the original code for this
- ECS is not suitable for raygui (at least at this scale)
- It is more trouble than it is worth
- Implement simple menu test scene with two buttons
- They do nothing
Changelog:
- Add components:
- selectable : indicate an entity is selectable
- selection : indicate an entity has a list of choices
- Add menu scene implementation and test
- Reduce repetition in CMakeLists in specifying libraries