- Added new test cases for various graphics functionalities, including animation previews, particle effects, and inventory UI.
- Implemented rendering previews for Mixamo animations, Box2D physics, and procedural generation, allowing for real-time visualization during tests.
- Introduced helper functions for drawing graphics elements, improving the clarity and maintainability of test code.
- Enhanced existing tests to utilize the new graphics capabilities, ensuring comprehensive coverage of rendering features.
* feat(map): add dual-grid autotile resolve for TileLayer
Implement Oskar Stålberg-style dual-grid: logic layer paints fill/empty,
display layer gets a half-tile offset 15-tile resolve. Document that Tiled
has no native dual-grid (Terrain/Wang Corner Set is same-grid only).
Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>
* fix(map): use ComponentRef for DualGrid config access
TileLayer::config() returns ecs::ComponentRef, not a raw pointer.
Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>
* test(map): fix dual-grid filledGid expectations and clean layers
Correct corner sampling for a single logic cell (BR vs TL) and clear
layers after resolve tests to avoid ECS draw pollution.
Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>
* test(map): fix ComponentRef usage in dual-grid orientation tests
Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>
---------
Co-authored-by: Cursor Agent <cursoragent@cursor.com>
- Removed UWP platform from the available build options in CMake.
- Deleted the UWP-specific CMakeLists.txt file.
- Added comprehensive tests for various map projection methods, including isometric and staggered projections, to ensure accurate tile-to-world and world-to-tile conversions.
These changes streamline the build configuration and improve the testing coverage for map projections.
- Implemented multi-layer tilemap functionality, allowing for the reading and saving of Tiled JSON formats.
- Added support for various tile projections (orthogonal, isometric, staggered, hexagonal) and depth calculations.
- Introduced object layer parsing and caching for improved map object management.
- Updated the rendering system to unify 2D depth queues and enhance sprite handling.
- Added new methods for accessing object properties, including position and dimensions.
This update significantly improves the map module's capabilities and integration with the rendering system.
- Updated the physics module to include Box2D support, enabling management of physics bodies and collision events.
- Enhanced the map module to support tile layers and improved hot-reload functionality for tilemaps.
- Updated documentation to reflect the new features in the physics and map systems, including usage examples and API references.
- Modified CMakeLists.txt to include new modules for physics and font management, ensuring proper build configurations.
Co-authored-by: Cursor <cursoragent@cursor.com>