From b717b3e0d8cc8e423a5b74bc7559b7280689d37f Mon Sep 17 00:00:00 2001 From: skal Date: Sun, 8 Mar 2026 10:13:48 +0100 Subject: tweak: scene2.wgsl visual adjustments Co-Authored-By: Claude Sonnet 4.6 --- src/effects/scene2.wgsl | 24 +++++++++++------------- 1 file changed, 11 insertions(+), 13 deletions(-) (limited to 'src/effects/scene2.wgsl') diff --git a/src/effects/scene2.wgsl b/src/effects/scene2.wgsl index 7df91c3..3221321 100644 --- a/src/effects/scene2.wgsl +++ b/src/effects/scene2.wgsl @@ -8,30 +8,28 @@ @group(0) @binding(2) var uniforms: UniformsSequenceParams; fn N(a: vec3f, p: vec3f) -> f32 { - return abs(dot(sin(uniforms.time + 0.1 * p.z + 0.3 * p / a), a + a)); + return abs(dot(sin(uniforms.time + 0.1 * p.z + 0.6 * p / a), a)); } @fragment fn fs_main(in: VertexOutput) -> @location(0) vec4f { let r = uniforms.resolution; - let frag_coord = vec2f(in.position.x, r.y - in.position.y); - let u = (frag_coord + frag_coord - r) / r.y; + let uv = in.position.xy; + let u = (2. * uv - r.xy) / r.y; var p = vec3f(0.0); - var col = vec4f(0.0); - var s: f32 = 0.0; - + var col = vec3f(0.0); for (var i: f32 = 0.0; i < 100.0; i += 1.0) { - p += vec3f(u * s, s); - s = 6.0 + p.y; - s -= N(vec3f(0.08), p); - s -= N(vec3f(0.2), p); - s -= N(vec3f(0.6), p); + var s = 6.0 + p.y; + s -= N(vec3f(0.15), p); + s -= N(vec3f(0.5), p); + s -= N(vec3f(1.2), p); s = 0.1 + abs(s) * 0.2; - col += vec4f(4.0, 2.0, 1.0, 0.0) / s; + col += vec3f(3.0, 2.0, 1.0) / s; + p += vec3f(u * s, s); } col *= smoothstep(0.8, 0.75, abs(u.y)); let len_u = max(length(u), 0.0001); col = tanh(col / 2000.0 / len_u); - return vec4f(col.rgb, 1.0); + return vec4f(col, 1.0); } -- cgit v1.2.3