diff options
Diffstat (limited to 'TODO.md')
| -rw-r--r-- | TODO.md | 20 |
1 files changed, 20 insertions, 0 deletions
@@ -350,6 +350,26 @@ This file tracks prioritized tasks with detailed attack plans. - Increased particle usage: Added 5 ParticleSprayEffect instances throughout demo (6b, 12b, 17b, 24b, 56b) - Result: Particles now render as fading transparent circles instead of opaque squares - [ ] **Task #55: SDF Random Planes Intersection**: Implement `sdPolyhedron` (crystal/gem shapes) via plane intersection. +- [ ] **Task #68: Visual Debug - Mesh Wireframe Rendering**: Show triangle edges as lines for mesh objects + - **Current**: Visual debug mode shows normals for all objects (SDF and meshes) + - **Goal**: Add wireframe overlay for mesh objects to visualize triangle structure + - **Implementation**: + - Extend `VisualDebug` class with mesh wireframe rendering function + - For each mesh triangle: draw 3 lines connecting vertices (v0→v1, v1→v2, v2→v0) + - Use world-space positions (transform by model matrix) + - Color: distinct from normals (e.g., cyan for edges, yellow for normals) + - Only render when debug mode enabled (`!STRIP_ALL`) + - **Use Cases**: + - Verify mesh topology and face orientation + - Debug mesh loading/transformation issues + - Visualize mesh deformation or animation + - Check for degenerate triangles or mesh artifacts + - **Technical Details**: + - Access mesh data via `AssetManager::GetMeshAsset()` + - Iterate through indices in groups of 3 (triangles) + - Draw lines using existing `VisualDebug::draw_line()` API + - Transform vertices: `world_pos = model_matrix * local_pos` + - **Priority**: Low (debug visualization, not production feature) - [ ] **Task #54: Tracy Integration**: Integrate Tracy debugger for performance profiling. - [ ] **Task #58: Advanced Shader Factorization**: Further factorize WGSL code into smaller, reusable snippets. - [ ] **Task #59: Comprehensive RNG Library**: Add WGSL snippets for float/vec2/vec3 noise (Perlin, Gyroid, etc.) and random number generators. |
