[input layout] 0 r32g32b32a32 float texcoord 0 r32g32 float sv_position [vertex buffer 0] 0.0 1.0 0.0 1.0 -2.0 -2.0 0.0 1.0 0.0 1.0 -2.0 2.0 0.0 1.0 0.0 1.0 2.0 -2.0 0.0 1.0 0.0 1.0 2.0 2.0 [vertex shader] struct vertex { struct { float4 texcoord : texcoord; float4 pos : sv_position; } m; }; void main(inout struct vertex v) { } [pixel shader] struct input { struct { float4 texcoord : texcoord; } m; }; struct output { struct { float4 color : sv_target; } m; }; struct output main(struct input i) { struct output o; o.m.color = i.m.texcoord; return o; } [test] draw triangle strip 4 probe all rgba (0.0, 1.0, 0.0, 1.0)