summaryrefslogtreecommitdiff
path: root/TODO.md
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-02-03 08:18:50 +0100
committerskal <pascal.massimino@gmail.com>2026-02-03 08:18:50 +0100
commitf9b91fac0f4611bd344eb57c8596b2da04926d02 (patch)
tree21e360fd7f28b0842645437ecbbf6bc51686d2c3 /TODO.md
parentf32afcbeffa0e8b947457c67c73566da4ebf33cc (diff)
docs: Mark Shader Asset Integration (Task #24) as completed
Updates status in PROJECT_CONTEXT.md and TODO.md.
Diffstat (limited to 'TODO.md')
-rw-r--r--TODO.md12
1 files changed, 3 insertions, 9 deletions
diff --git a/TODO.md b/TODO.md
index 1cb6196..5ecd4bf 100644
--- a/TODO.md
+++ b/TODO.md
@@ -9,20 +9,13 @@ This file tracks prioritized tasks with detailed attack plans.
- [ ] **Attack Plan - Unified Poll:** Incorporate `platform_get_time()` and `platform_get_aspect_ratio()` updates into `platform_poll()`.
- [ ] **Attack Plan - Standard Container Removal:** Replace `std::map`, `std::string`, and `std::vector` in performance-critical or size-sensitive paths with simpler C-style alternatives.
-## Priority 2: Shader Asset Integration (Task #24)
-**Goal:** Treat shader snippets as regular assets managed by `AssetManager` and `ShaderComposer`.
-- [ ] **Attack Plan - Extract Shaders:** Move hardcoded WGSL strings (from `renderer.cc`, `gpu.cc`) into `assets/final/shaders/*.wgsl`.
-- [ ] **Attack Plan - Asset Entry:** Add new shader files to `assets/final/demo_assets.txt` and `test_assets_list.txt`.
-- [ ] **Attack Plan - ShaderComposer Update:** Update `ShaderComposer` to optionally register snippets from `AssetId`.
-- [ ] **Attack Plan - Integration:** Update `Renderer3D` and `demo64k` to use `ShaderComposer` with asset-based snippets.
-
-## Priority 3: 3D System Enhancements (Task #18)
+## Priority 2: 3D System Enhancements (Task #18)
**Goal:** Establish a pipeline for importing complex 3D scenes to replace hardcoded geometry.
- [ ] **Attack Plan - Blender Exporter:** Create a Python script (`tools/blender_export.py`) to export meshes/cameras/lights to a binary asset format.
- [ ] **Attack Plan - Asset Ingestion:** Update `asset_packer` to handle the new 3D binary format.
- [ ] **Attack Plan - Runtime Loader:** Implement a minimal C++ parser to load the scene data into the ECS/Renderer.
-## Priority 4: Shader Optimization (Task #21)
+## Priority 3: Shader Optimization (Task #21)
**Goal:** Improve GPU performance and reduce shader source bloat.
- [ ] **Attack Plan - Normal Factorization:** Create a standard WGSL helper for normal calculation to avoid duplicate code in every effect.
- [ ] **Attack Plan - Tri-planar Mapping:** Implement bi/tri-planar mapping for procedural textures to improve visual quality on complex SDFs.
@@ -37,6 +30,7 @@ This file tracks prioritized tasks with detailed attack plans.
- [ ] **Task #22**: Windows Native Platform (Win32 API)
## Recently Completed
+- [x] **Shader Asset Integration (Task #24)**: Extracted hardcoded shaders to `.wgsl` assets, updated `asset_packer` for string safety, and refactored C++ code to use `GetAsset`.
- [x] **WebGPU Stability & macOS Fixes**: Resolved surface creation failures by adding `GLFW_EXPOSE_NATIVE_COCOA` and fixed validation errors in surface configuration and render pass attachments.
- [x] **Final Build Stripping (Task #8)**: Implemented `STRIP_ALL` macro to remove CLI parsing and debug info. Optimized macOS linker flags (`-dead_strip`).
- [x] **Tracker Asset Sample Integration**: Modified `assets/music.track` for `SAMPLE ASSET_NAME` syntax, updated `tools/tracker_compiler.cc` for parsing and code generation, and finalized `src/audio/tracker.cc` for unified asset sample pasting.