From f700a081d9a5315ef583ffca2a2c626878ca2945 Mon Sep 17 00:00:00 2001 From: skal Date: Wed, 11 Mar 2026 07:13:22 +0100 Subject: factorize render_ntsc() --- src/shaders/render/ntsc_common.wgsl | 13 +++---------- 1 file changed, 3 insertions(+), 10 deletions(-) (limited to 'src/shaders/render/ntsc_common.wgsl') diff --git a/src/shaders/render/ntsc_common.wgsl b/src/shaders/render/ntsc_common.wgsl index 61ea254..2f0d247 100644 --- a/src/shaders/render/ntsc_common.wgsl +++ b/src/shaders/render/ntsc_common.wgsl @@ -1,5 +1,6 @@ // Shared NTSC post-process constants and functions. // Requires sample_ntsc_signal(uv: vec2f) -> vec4f to be defined by the includer. +// Provides render_ntsc(). const PI = 3.14159265; const TAU = 6.28318530718; @@ -79,12 +80,12 @@ fn randomized_f32(p: vec2f, t: f32) -> f32 { return hash_2f_alt(vec2f(p * 0.152 + t * 1500. + 50.0)); } -@fragment fn fs_main(in: VertexOutput) -> @location(0) vec4f { +fn render_ntsc(st: vec2f) -> vec4f { let t = uniforms.time; let bt = uniforms.beat_phase; // Fisheye/barrel distortion - var uv = fisheye(in.st, 0.18); + var uv = fisheye(st, 0.18); let mframe = sin(bt * 32.) * 1.2; uv.y += mframe * SCAN_FLICKER / uniforms.resolution.y; // flicker at target resolution @@ -131,13 +132,5 @@ fn randomized_f32(p: vec2f, t: f32) -> f32 { let scanl = 0.82 + 0.5 * sin(PI * uv.y * uniforms.resolution.y / 2.); col = scanl * mix(border_col, col, v_strength); col = clamp(col, vec4f(0.), vec4f(1.0)); - - // Black outside screen edges - if (uv.x <= 0.0 || uv.x >= 1.0 || uv.y <= 0.0 || uv.y >= 1.0) { - // discard; - } - - col = debug_f32(col, in.position.xy / 2., vec2f(100., 75.), uniforms.beat_time); - col = debug_str(col, in.position.xy / 2., vec2f(100., 150.), vec4u(0x48656C6Cu, 0x6F000000u, 0u, 0u), 5u); return col; } -- cgit v1.2.3