summaryrefslogtreecommitdiff
path: root/tools/seq_compiler.py
diff options
context:
space:
mode:
authorskal <pascal.massimino@gmail.com>2026-02-16 17:04:41 +0100
committerskal <pascal.massimino@gmail.com>2026-02-16 17:04:41 +0100
commitc79ebff06ae74135c5f67ecc01d5bb55aeb5eda9 (patch)
tree6521b1ed109668715a4a75a27e2f6a13218ae480 /tools/seq_compiler.py
parent5eba3e77c58941ee02257f077a80558dd152a52e (diff)
fix: calculate beat_phase for FlashEffect and refactor uniforms
- seq_compiler.py: Calculate beat_phase from beat_time (was hardcoded 0.0f) - Refactor: Replace CommonPostProcessUniforms with UniformsSequenceParams - Remove duplicate struct definition in post_process_helper.h - Update all CNN effects and tests to use unified uniform struct - Fixes FlashEffect showing solid white instead of flashing to beat Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
Diffstat (limited to 'tools/seq_compiler.py')
-rwxr-xr-xtools/seq_compiler.py6
1 files changed, 4 insertions, 2 deletions
diff --git a/tools/seq_compiler.py b/tools/seq_compiler.py
index 6b72ebd..3b8d126 100755
--- a/tools/seq_compiler.py
+++ b/tools/seq_compiler.py
@@ -516,7 +516,8 @@ void RenderTimeline(WGPUCommandEncoder encoder, float time, int width, int heigh
float beat_time, float audio_intensity) {
Sequence* seq = GetActiveSequence(time);
if (seq) {
- seq->preprocess(time, beat_time, 0.0f, audio_intensity);
+ float beat_phase = fmodf(beat_time, 1.0f);
+ seq->preprocess(time, beat_time, beat_phase, audio_intensity);
seq->render_effects(encoder);
}
}
@@ -584,7 +585,8 @@ void RenderTimeline(WGPUSurface surface, float time, int width, int height,
seq->set_sink_view(g_sink_view);
// Update uniforms via preprocess
- seq->preprocess(time, beat_time, 0.0f, audio_intensity);
+ float beat_phase = fmodf(beat_time, 1.0f);
+ seq->preprocess(time, beat_time, beat_phase, audio_intensity);
WGPUCommandEncoder encoder = wgpuDeviceCreateCommandEncoder(ctx->device, nullptr);