struct Uniforms { | |
modelViewProjectionMatrix : mat4x4<f32>; | |
}; | |
[[binding(0), group(0)]] var<uniform> uniforms : Uniforms; | |
struct VertexInput { | |
[[location(0)]] | |
cur_position : vec4<f32>; | |
[[location(1)]] | |
color : vec4<f32>; | |
}; | |
struct VertexOutput { | |
[[location(0)]] | |
vtxFragColor : vec4<f32>; | |
[[builtin(position)]] | |
Position : vec4<f32>; | |
}; | |
[[stage(vertex)]] | |
fn vtx_main(input : VertexInput) -> VertexOutput { | |
var output : VertexOutput; | |
output.Position = (uniforms.modelViewProjectionMatrix * input.cur_position); | |
output.vtxFragColor = input.color; | |
return output; | |
} | |
[[stage(fragment)]] | |
fn frag_main([[location(0)]] fragColor : vec4<f32>) -> [[location(0)]] vec4<f32> { | |
return fragColor; | |
} |