diff options
Diffstat (limited to 'assets/final/shaders/distort.wgsl')
| -rw-r--r-- | assets/final/shaders/distort.wgsl | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/assets/final/shaders/distort.wgsl b/assets/final/shaders/distort.wgsl index cca01c4..5d35129 100644 --- a/assets/final/shaders/distort.wgsl +++ b/assets/final/shaders/distort.wgsl @@ -1,15 +1,15 @@ @group(0) @binding(0) var smplr: sampler; @group(0) @binding(1) var txt: texture_2d<f32>; -struct CommonUniforms { - resolution: vec2<f32>, - aspect_ratio: f32, - time: f32, - beat: f32, - audio_intensity: f32, +#include "common_uniforms" + +struct DistortParams { + strength: f32, + speed: f32, }; @group(0) @binding(2) var<uniform> uniforms: CommonUniforms; +@group(0) @binding(3) var<uniform> params: DistortParams; @vertex fn vs_main(@builtin(vertex_index) i: u32) -> @builtin(position) vec4<f32> { var pos = array<vec2<f32>, 3>( @@ -22,6 +22,6 @@ struct CommonUniforms { @fragment fn fs_main(@builtin(position) p: vec4<f32>) -> @location(0) vec4<f32> { let uv = p.xy / uniforms.resolution; - let dist = 0.1 * uniforms.audio_intensity * sin(uv.y * 20.0 + uniforms.time * 5.0); + let dist = params.strength * uniforms.audio_intensity * sin(uv.y * 20.0 + uniforms.time * params.speed * 5.0); return textureSample(txt, smplr, uv + vec2<f32>(dist, 0.0)); } |
