struct UniformData { model : mat4x4, view : mat4x4, projection : mat4x4, } @group(0) @binding(0) var mvp: UniformData; struct VertexOutput { @builtin(position) position : vec4, @location(0) texture_coord : vec2, } @vertex fn main( @location(0) position : vec3, @location(1) texture_coord : vec2 ) -> VertexOutput { var output: VertexOutput; output.position = mvp.projection * mvp.view * mvp.model * vec4(position, 1.0); output.texture_coord = texture_coord; return output; }