I am trying to draw a full screen quad without a vertex buffer. SV_VertexID should do the trick, although I get a weird error in my shader on the following line:
PS_IN VS(uint VertexID : SV_VertexID)// << this is the line that causes trouble
{
PS_IN output = (PS_IN)0;
float4 pos = float4( (VertexID << 1) & 2, VertexID & 2 ,0,1);
output.pos = mul(pos, wvp );
float4 t = mul(pos, texTransform);
output.tex = float2(t.x,t.y);
return output;
}
The error message:
invalid type used for 'SV_VertexID' input semantics, must be integral
This is how I compile the shader:
fxc.exe /Tvs_4_0_level_9_3 /EVS /Fo Texture_VS.fxo Texture.fx
I dont understand why, as the type is integral. Why do I get this compiler error?