From 850388bcaabf057beed8f126002b7b663183b2d8 Mon Sep 17 00:00:00 2001 From: skal Date: Fri, 20 Feb 2026 12:08:34 +0100 Subject: feat(sequence): port Scene1Effect + fix seq_compiler absolute time bug MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 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 --- workspaces/main/shaders/scene1.wgsl | 4 ++-- workspaces/main/timeline.seq | 4 +--- 2 files changed, 3 insertions(+), 5 deletions(-) (limited to 'workspaces/main') diff --git a/workspaces/main/shaders/scene1.wgsl b/workspaces/main/shaders/scene1.wgsl index 8d5d5db..2f1174a 100644 --- a/workspaces/main/shaders/scene1.wgsl +++ b/workspaces/main/shaders/scene1.wgsl @@ -1,13 +1,13 @@ // Scene1 effect shader - ShaderToy conversion (raymarching cube & sphere) // Source: Saturday cubism experiment by skal -#include "common_uniforms" +#include "sequence_uniforms" #include "math/color" #include "math/utils" #include "math/sdf_shapes" #include "render/raymarching" -@group(0) @binding(0) var uniforms: CommonUniforms; +@group(0) @binding(2) var uniforms: UniformsSequenceParams; const PI: f32 = 3.141592654; const TAU: f32 = 6.283185307; diff --git a/workspaces/main/timeline.seq b/workspaces/main/timeline.seq index 77f013d..2b843a7 100644 --- a/workspaces/main/timeline.seq +++ b/workspaces/main/timeline.seq @@ -25,9 +25,7 @@ SEQUENCE 16.00 2 "hybrid_heptagon" EFFECT + Hybrid3D temp1 -> sink 0.00 4.00 SEQUENCE 20.00 0 "heptagon_scene" - # Heptagon -> Scene1 (placeholder) -> sink - EFFECT + Heptagon source -> temp1 0.00 8.00 - EFFECT + Placeholder temp1 -> sink 0.00 8.00 + EFFECT + Scene1 source -> sink 0.00 8.00 SEQUENCE 28.00 0 "fade_test" # Heptagon -> Fade (placeholder) -> sink -- cgit v1.2.3