The cg language spec says, talking about position invariance…
MVP is a uniform variable (or structure element) of type float4x4 with an input binding semantic that causes it to track the fixed-function modelview-projection matrix.(The name of this binding semantic is currently profile-specific—for OpenGL profiles, the semantic _GL_MVP is recommended).
The arbvp1 profile provides the “glstate” variable that lets me access gl state from the vertex program, per the ARB_vertex_program extension.
In the vp30 profile I think I can make a uniform parameter like this…
uniform float4x4 mvp : _GL_MVP
to bind the gl state to the uniform parameter. Is this right?
How do I bind to other gl states? Where are the binding semantics defined for each profile? I’m hoping _GL_MVP is not the only state available in the vp30 profile.
I hope I just can’t find the documentation.