Texture2D inputTexture : register(t0); SamplerState TextureSampler; struct VSOutput { float4 pos : SV_POSITION; float2 uv : TEXCOORD; }; VSOutput vs(uint id : SV_VertexID) { VSOutput output; float2 uv = float2((id << 1) & 2, id & 2); output.pos = float4(uv * 2 - 1, 0, 1); output.uv = uv * float2(1, -1) + float2(0, 1); return output; } float4 ps(VSOutput input) : SV_Target { float4 color = inputTexture.Sample(TextureSampler, input.uv); return color; }