Introduce Flex containers with gap, flexGrow, align, and justify so
toolbars and panels can lay out without manual SameLine, including
Spacer and script builder APIs.
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Expand Theme into a full design-token set (palette, rounding, borders,
spacing, font scale) shared by dark/light presets. Add setTheme/getTheme
script APIs and apply tokens with DPI scale so geometry stays consistent
across theme switches.
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
- Introduced a new ECS demo in `examples/ecs/main.nut`, showcasing the implementation of Component, Entity, and System classes.
- Updated the Makefile to include a new target for running the ECS example, enhancing the available game scenarios.
These changes provide a foundational example for using the ECS architecture within the engine.
- Added a new submodule for inverse kinematics (`external/ik.hpp`) to support 2D/3D skeletons and solvers.
- Introduced the `IK` module with factories for `Skeleton2D`, `Skeleton3D`, `Solver2D`, and `Solver3D`.
- Enhanced the animation system with a new `Animation` module that supports property tweening and frame updates.
- Updated CMake configuration to include the new modules and their dependencies.
- Revised documentation to reflect the new features and usage examples for both IK and animation systems.
These additions significantly expand the engine's capabilities for character animation and movement control.
- Changed the default game directory setting to empty, allowing for running the embedded demo without arguments.
- Updated run commands to conditionally change directories based on the GAME variable, improving flexibility for game execution.
- Enhanced documentation in the Makefile to clarify the behavior of the GAME variable and its impact on running the game.
These changes streamline the game execution process and improve user experience when running different game scenarios.