Commit graph

1793 commits

Author SHA1 Message Date
Azgaar
73d6d664fc feat: Implement RuntimeDefsModule for managing shared runtime definitions and update related components 2026-03-13 12:18:27 +01:00
Azgaar
f928f9d101 feat: Implement compatibility bridge for legacy single-SVG callers
- Added compatibility lookups for legacy single-SVG callers to ensure existing workflows function during migration to new architecture.
- Implemented `getLayerSvg`, `getLayerSurface`, and `queryMap` functions as stable globals.
- Migrated relevant code in `draw-state-labels.ts` to utilize the new `queryMap` function for scene-aware lookups.
- Updated `layers.js` to manage layer visibility and registration more effectively.
- Introduced `LayersModule` to handle layer registration, visibility, and ordering.
- Created `WebGLSurfaceLayer` and `SvgLayer` classes to encapsulate layer behavior.
- Refactored `TextureAtlasLayer` to utilize the new layer management system.
- Updated HTML structure to accommodate new SVG and canvas elements.
- Ensured all TypeScript checks pass with zero errors on modified files.
2026-03-13 11:56:07 +01:00
Azgaar
52708e50c5 feat: Update SceneModule to manage camera state and viewport, refactor WebGL layer to utilize Scene methods 2026-03-13 02:39:40 +01:00
Azgaar
42557881bb feat: Introduce SceneModule for managing map and WebGL canvas integration 2026-03-13 01:07:10 +01:00
Azgaar
125403b82f feat: Implement Story 1.6 - Move Shared Defs Resources to the Dedicated Host
- Added documentation for Story 1.6 outlining the requirements and acceptance criteria for migrating shared defs-backed resources to a dedicated host.
- Updated sprint status to reflect the readiness of Story 1.6 for development.
- Created epics document detailing the breakdown of the Fantasy-Map-Generator project, including functional and non-functional requirements.
- Added implementation readiness report assessing the current state of documentation and readiness for the project.
- Introduced end-to-end tests for scene bootstrap to ensure runtime hosts are created and reused correctly.
2026-03-13 00:22:23 +01:00
Azgaar
df18f69516 feat: Add architecture decision and product requirements documents for per-layer SVG map architecture 2026-03-12 23:24:02 +01:00
Azgaar
256f36015b refactor: Update relief icon handling and streamline texture atlas integration 2026-03-12 21:46:22 +01:00
Azgaar
b17b417d1b refactor: Update RELIEF_SYMBOLS structure and utilize RELIEF_ATLASES for terrainLayer 2026-03-12 20:39:17 +01:00
Azgaar
c7793d2578 refactor: Remove lastDrawnIcons tracking to simplify terrainLayer drawing logic 2026-03-12 20:24:23 +01:00
Azgaar
70e3eea4d1 feat: Introduce TextureAtlasLayer for efficient texture management and rendering
refactor: Streamline WebGL2LayerClass methods and remove unused code
refactor: Consolidate relief icon rendering logic and remove benchmarks
2026-03-12 20:17:17 +01:00
Azgaar
dc6ff785ba refactor: Simplify texture loading and disposal in draw-relief-icons renderer 2026-03-12 19:36:25 +01:00
Azgaar
ae6d105bf1 refactor: Remove debug logging from WebGL2LayerClass initialization and syncTransform methods 2026-03-12 19:29:58 +01:00
Azgaar
744dbb154c feat: Optimize WebGL2LayerClass initialization and improve camera synchronization 2026-03-12 19:29:45 +01:00
Azgaar
9e00d69843 refactor: replace webgl-layer-framework with webgl-layer module
- Removed the webgl-layer-framework module and its associated tests.
- Introduced a new webgl-layer module to handle WebGL2 layer management.
- Updated references throughout the codebase to use the new webgl-layer module.
- Adjusted layer registration and rendering logic to align with the new structure.
- Ensured compatibility with existing functionality while improving modularity.
2026-03-12 19:15:49 +01:00
Azgaar
d1d31da864 feat: Improve camera synchronization and add null check for camera instance 2026-03-12 18:35:57 +01:00
Azgaar
8560c131eb feat: Enhance WebGL2LayerFramework initialization and improve global variable handling 2026-03-12 18:25:08 +01:00
Azgaar
2dae325d05 feat: Update sprint status to mark retrospectives as done for Epic 1 and Epic 3 2026-03-12 15:48:19 +01:00
Azgaar
1c1d97b8e2 feat: Update sprint status and complete Epic 2 tasks
- Mark Epic 2 as done and update related stories to reflect completion.
- Add Epic 2 retrospective document detailing team performance, metrics, and insights.
- Enhance draw-relief-icons.ts to include parentEl parameter in drawRelief function.
- Introduce performance measurement scripts for WebGL and SVG rendering comparisons.
- Add benchmarks for geometry building in draw-relief-icons.
2026-03-12 15:43:19 +01:00
Azgaar
a285d450c8 feat: refactor draw-relief-icons renderer to utilize WebGL2LayerFramework
- Removed global renderer, camera, and scene management in favor of layer framework integration.
- Implemented terrain layer registration with setup, render, and dispose methods.
- Enhanced texture loading and caching mechanisms.
- Updated geometry building to return Mesh objects directly.
- Added performance benchmarking story for render performance validation.
- Created bundle size audit story to ensure effective tree-shaking and size constraints.
2026-03-12 15:04:37 +01:00
Azgaar
30f74373b8 feat: Refactor draw-relief-icons.ts to integrate with WebGL2LayerFramework
- Implemented registration of draw-relief-icons with WebGL2LayerFramework, removing module-level renderer state.
- Updated drawRelief, undrawRelief, and rerenderReliefIcons functions to utilize framework methods.
- Ensured SVG fallback path is preserved and functional.
- Added performance criteria for rendering relief icons.
- Created tests to verify fallback integration and visual parity with existing SVG output.

test: Add WebGL2 fallback integration verification

- Introduced new tests for WebGL2LayerFramework to ensure no-ops when fallback is active.
- Verified that drawRelief routes to SVG when WebGL2 is unavailable.
- Confirmed visual parity between SVG output and existing implementation.
- Ensured all tests pass with updated coverage metrics.
2026-03-12 14:28:33 +01:00
Azgaar
8c78fe2ec1 Refactor code structure for improved readability and maintainability 2026-03-12 14:14:29 +01:00
Azgaar
769ef9eff0 feat: implement WebGL2 layer framework with core functionalities including init, resize observation, and D3 zoom subscription 2026-03-12 13:44:23 +01:00
Azgaar
42b92d93b4 feat: update sprint status to reflect in-progress development for WebGL Layer Framework module 2026-03-12 05:15:54 +01:00
Azgaar
6b7029a05b Add sprint status and implementation readiness documents for Fantasy-Map-Generator
- Created sprint-status.yaml to track development status of epics and stories.
- Added epics.md detailing the breakdown of functional and non-functional requirements for the project.
- Introduced implementation-readiness-report-2026-03-12.md summarizing document inventory, PRD analysis, epic coverage validation, UX alignment assessment, and overall readiness status.
2026-03-12 05:09:46 +01:00
Azgaar
1503d18e06 feat: enhance WebGL layer framework with improved registration API and rendering callbacks 2026-03-12 04:25:20 +01:00
Azgaar
610d6aee78 feat: update architecture document with detailed project context and functional requirements for WebGL layer framework 2026-03-12 04:15:16 +01:00
Azgaar
21d76c4881 feat: add architecture and product requirements documents for WebGL layer framework 2026-03-12 03:50:25 +01:00
Azgaar
dc212eed8a brainstorm 2026-03-12 03:04:03 +01:00
Azgaar
3047aefd40 bmad-init 2026-03-12 01:05:55 +01:00
Azgaar
b6484a783f fix: clean up .gitignore by removing unnecessary entries 2026-03-11 23:17:10 +01:00
Azgaar
94da8fa0bd fix: no foright object 2026-03-11 23:14:56 +01:00
Azgaar
fae0bd1085 fix: improve comments for clarity and update type imports for consistency 2026-03-11 01:17:36 +01:00
Azgaar
3c7b6fffef
Merge branch 'master' into relief-webgl-renderer 2026-03-11 01:03:23 +01:00
Azgaar
ffe350bca8 fix: update type definitions and improve renderer initialization in draw-relief-icons 2026-03-11 00:51:56 +01:00
Azgaar
828534ebd9 fix: clean up drawWebGl and drawSvg functions for improved readability 2026-03-11 00:21:48 +01:00
Azgaar
ab7baf83fd feat: update relief rendering logic and version to 1.114.0 2026-03-11 00:11:15 +01:00
Azgaar
dc06f3d65c fix: streamline texture loading and preload logic in WebGL renderer 2026-03-10 22:55:08 +01:00
Azgaar
4515232e93 fix: update relief icon hover transition and click selection logic 2026-03-10 22:44:07 +01:00
Azgaar
bf22c5eaf6 Refactor relief rendering and generation logic
- Migrate relief icon rendering from SVG to WebGL for improved performance.
- Introduce a new relief generator module to handle relief icon creation.
- Update event listeners in relief editor to use a consistent `byId` method.
- Synchronize relief data with the current SVG DOM when exiting edit mode.
- Enhance relief icon management by integrating new utility functions for generating and resolving relief icons.
- Clean up legacy code and improve overall structure for better maintainability.
2026-03-10 03:05:07 +01:00
Azgaar
3f9a7702d4 docs: update contribution guidelines and clarify project architecture 2026-03-10 00:59:41 +01:00
Azgaar
6ea53eb6f9 chore: bump version to 1.113.6 and update resample.js reference 2026-03-10 00:00:01 +01:00
Azgaar
cbed9af783 fix: update .gitignore to include additional directories and files 2026-03-09 23:11:32 +01:00
Azgaar
1116cc5e0f refactor: replace deepCopy with structuredClone 2026-03-09 23:05:27 +01:00
Azgaar
8d092e235e fix: set color space to SRGB for loaded textures 2026-03-09 04:49:43 +01:00
Azgaar
62e27a7168 fix: replace preloadTextures with loadTexture in SVG edit mode 2026-03-09 02:54:32 +01:00
Azgaar
7481a2843e feat: relief three.js renderer 2026-03-09 02:47:13 +01:00
Azgaar
7a49098425 fix: update issue templates for consistency and clarity 2026-03-07 18:32:40 +01:00
github-actions[bot]
c7978d9d64 chore: bump version to 1.113.5 2026-03-07 17:29:58 +00:00
Azgaar
9a8744170e
test: add a test change comment in options.js (#1350) 2026-03-07 18:29:46 +01:00
Azgaar
ccd0b451ea fix: update permissions to include models read access 2026-03-07 18:28:31 +01:00