diff options
| -rw-r--r-- | PROJECT_CONTEXT.md | 10 | ||||
| -rw-r--r-- | TODO.md | 20 |
2 files changed, 15 insertions, 15 deletions
diff --git a/PROJECT_CONTEXT.md b/PROJECT_CONTEXT.md index afe99b5..4c308c9 100644 --- a/PROJECT_CONTEXT.md +++ b/PROJECT_CONTEXT.md @@ -28,6 +28,7 @@ Style: ## Project Roadmap ### Recently Completed +- **Task #50: WGSL Modularization**: Updated `ShaderComposer` to support recursive `#include` directives, refactored the entire shader library into granular snippets (shapes, utils, lighting), and updated the 3D renderer to use this modular system. This resolved macOS shader compilation issues and significantly improved shader maintainability. - **Task #48: Improve Audio Coverage**: Achieved 93% coverage for `src/audio/` by adding dedicated tests for DCT transforms, procedural generation, and synthesis rendering. - **Task #47: Improve Asset Manager Coverage**: Increased `asset_manager.cc` coverage to 88% by testing runtime error paths (unknown functions, generation failure). - **Task #46: Enhance Coverage Script**: Updated coverage report script to support directory filtering (e.g., `./scripts/gen_coverage_report.sh src/procedural`). @@ -50,11 +51,10 @@ Style: --- ## Next Up -- **Task #20: Platform & Code Hygiene** (Completed) - - [x] Gather all cross-compile and platform-specific conditional code into `platform.h`. - - [x] Refactor `platform_init()` and `platform_poll()` for cleaner abstraction. - - [x] Consolidate WebGPU header inclusions. - - [ ] **Task #34: Full STL Removal**: Remove `std::map`/`std::vector` from remaining paths (Deferred to Phase 2). +- **Task #49: Physics & Collision** + - [ ] **Task #49.1: CPU-Side SDF Library**: Implement `sdSphere`, `sdBox` etc. in C++ (`src/3d/sdf_cpu.h`). + - [ ] **Task #49.2: BVH Construction**: Implement BVH builder and traversal for broad-phase collision. + - [ ] **Task #49.3: Physics Loop**: Implement integration, narrow-phase SDF probing, and collision resolution. - **Task #18: 3D System Enhancements** - [ ] **Task #36: Blender Exporter**: Create script to export scenes to internal binary format. @@ -30,16 +30,7 @@ This file tracks prioritized tasks with detailed attack plans. - [x] **Enhanced Procedural Noise:** Implemented a multi-octave Value Noise generator for higher-quality skybox textures. - [x] **Scene Integrity:** Restored proper object indexing and removed redundant geometry, ensuring the floor grid and objects render correctly. -## Priority 1: 3D System Enhancements (Task #18) -**Goal:** Establish a pipeline for importing complex 3D scenes to replace hardcoded geometry. -- [ ] **Task #36: Blender Exporter:** Create a Python script (`tools/blender_export.py`) to export meshes/cameras/lights to a binary asset format. -- [ ] **Task #37: Asset Ingestion:** Update `asset_packer` to handle the new 3D binary format. -- [ ] **Task #38: Runtime Loader:** Implement a minimal C++ parser to load the scene data into the ECS/Renderer. - -## Priority 2: WGSL Modularization (Task #50) [RECURRENT] -**Goal**: Refactor `ShaderComposer` and WGSL assets to support granular, reusable snippets and `#include` directives. This is an ongoing task to maintain shader code hygiene as new features are added. - -## Priority 3: Physics & Collision (Task #49) +## Priority 1: Physics & Collision (Task #49) **Goal**: Implement a lightweight physics engine using SDFs and BVH acceleration. (See `doc/3D.md` for design). - [ ] **Task #49.1: CPU-Side SDF Library**: @@ -59,6 +50,15 @@ This file tracks prioritized tasks with detailed attack plans. - [ ] Add `velocity`, `mass`, `restitution` fields to `Object3D`. - [ ] Integrate into `test_3d_render.cc` main loop. +## Priority 2: 3D System Enhancements (Task #18) +**Goal:** Establish a pipeline for importing complex 3D scenes to replace hardcoded geometry. +- [ ] **Task #36: Blender Exporter:** Create a Python script (`tools/blender_export.py`) to export meshes/cameras/lights to a binary asset format. +- [ ] **Task #37: Asset Ingestion:** Update `asset_packer` to handle the new 3D binary format. +- [ ] **Task #38: Runtime Loader:** Implement a minimal C++ parser to load the scene data into the ECS/Renderer. + +## Priority 3: WGSL Modularization (Task #50) [RECURRENT] +**Goal**: Refactor `ShaderComposer` and WGSL assets to support granular, reusable snippets and `#include` directives. This is an ongoing task to maintain shader code hygiene as new features are added. + ## Priority 4: Developer Tooling & CI **Goal**: Improve developer workflows, code quality, and release processes. *(No active tasks)* |
