struct Vertex { float4 pos : POSITION; float4 texcoord : TEXCOORD0; }; struct VSOut { float4 pos : SV_POSITION; float4 texcoord : TEXCOORD0; }; cbuffer MatrixBuffer : register(b0) { float4x4 gMVP; }; VSOut MainVS(Vertex v) { VSOut o; o.pos = mul(gMVP, v.pos); o.texcoord = v.texcoord; return o; } float4 MainPS(VSOut i) : SV_TARGET { return float4(1.0f, 0.0f, 0.0f, 1.0f); }