import super::util::make_polka_dots; struct VertexOutput { @builtin(position) position: vec4<f32>, @location(2) uv: vec2<f32>, } struct CustomMaterial { // Needed for 16-bit alignment on WebGL2 time: vec4<f32>, } @group(3) @binding(0) var<uniform> material: CustomMaterial; @fragment fn fragment( mesh: VertexOutput, ) -> @location(0) vec4<f32> { return make_polka_dots(mesh.uv, material.time.x); }