struct Uniforms { modelViewProjectionMatrix : mat4x4f, } @group(0) @binding(0) var uniforms : Uniforms; @group(0) @binding(1) var mySampler: sampler; @group(0) @binding(2) var myTexture: texture_2d; struct VertexOutput { @builtin(position) Position : vec4f, @location(0) fragUV : vec2f, } @vertex fn vertex_main( @location(0) position : vec4f, @location(1) uv : vec2f ) -> VertexOutput { return VertexOutput(uniforms.modelViewProjectionMatrix * position, uv); } @fragment fn fragment_main(@location(0) fragUV: vec2f) -> @location(0) vec4f { return textureSample(myTexture, mySampler, fragUV); }