diff options
| author | skal <pascal.massimino@gmail.com> | 2026-02-20 12:08:34 +0100 |
|---|---|---|
| committer | skal <pascal.massimino@gmail.com> | 2026-02-20 12:08:34 +0100 |
| commit | 850388bcaabf057beed8f126002b7b663183b2d8 (patch) | |
| tree | f55fad742d99dc91d2bf32ad54a27f95e8a183f3 /doc/COMPLETED.md | |
| parent | 1030807a58c8f4315d209c3756a9f98d8dc6bd91 (diff) | |
feat(sequence): port Scene1Effect + fix seq_compiler absolute time bug
- Add Scene1 effect: raymarching cube+sphere+ground (reflections, shadows)
- Fix scene1.wgsl: binding 0→2, CommonUniforms→UniformsSequenceParams
- Replace Heptagon+Placeholder stub in heptagon_scene with Scene1
- Fix seq_compiler.py: emit seq.start_time+effect.start/end (absolute times)
so dispatch_render active check works correctly for all sequences
Bug: effects in sequences starting after t=0 were never active because
local times (e.g. 0-8) never satisfied params.time<end for absolute time 20+.
34/34 tests passing.
handoff(Gemini): seq_compiler now emits absolute effect times. All existing
sequences affected — verify visual output across the full timeline.
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
Diffstat (limited to 'doc/COMPLETED.md')
| -rw-r--r-- | doc/COMPLETED.md | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/doc/COMPLETED.md b/doc/COMPLETED.md index 1fb51f5..72e389d 100644 --- a/doc/COMPLETED.md +++ b/doc/COMPLETED.md @@ -29,6 +29,19 @@ Detailed historical documents have been moved to `doc/archive/` for reference: Use `read @doc/archive/FILENAME.md` to access archived documents. +## Recently Completed (February 20, 2026) + +- [x] **Port Scene1Effect + Fix seq_compiler Timing Bug** + - **Goal**: Port `scene1.wgsl` (raymarching cube + sphere + ground, reflections, shadows) as `Scene1` effect replacing `Placeholder` stub in `heptagon_scene` sequence. + - **Implementation**: + - `src/effects/scene1_effect.h/.cc`: New effect mirroring Heptagon pattern (dummy texture, `create_post_process_pipeline`). + - `workspaces/main/shaders/scene1.wgsl`: Fixed binding (`@binding(0)` → `@binding(2)`) and struct (`CommonUniforms` → `UniformsSequenceParams`) to match post-process pipeline layout. + - Added to `COMMON_GPU_EFFECTS`, `demo_effects.h`, and `test_demo_effects.cc`. 10/10 effects tested. + - `workspaces/main/timeline.seq`: Replaced Heptagon+Placeholder chain with single `Scene1 source -> sink 0.00 8.00`. + - **Bug Fixed**: `seq_compiler.py` emitted local effect times (e.g. `0.0f, 8.0f`) but `dispatch_render` checks against absolute `params.time`. Effects in sequences starting after t=0 were **never active** (e.g. Scene1 at t=20+ never satisfied `time < 8`). Fixed by emitting `seq.start_time + effect.start/end` as absolute times. All sequences now render correctly. + - **Files**: `src/effects/scene1_effect.{h,cc}` (new), `src/effects/shaders.{h,cc}`, `cmake/DemoSourceLists.cmake`, `src/gpu/demo_effects.h`, `src/tests/gpu/test_demo_effects.cc`, `workspaces/main/shaders/scene1.wgsl`, `workspaces/main/timeline.seq`, `src/generated/timeline.cc`, `tools/seq_compiler.py` + - **Tests**: 34/34 passing + ## Recently Completed (February 18, 2026) - [x] **MQ Spectral Editor Improvements** |
