http://www.opengl.org/registry/doc/G...pec.4.30.6.pdf
In the vertex language, the built-ins are intrinsically declared as:
in int gl_VertexID;
in int gl_InstanceID;
out gl_PerVertex {
vec4 gl_Position;
float gl_PointSize;
float gl_ClipDistance[];
};
|
In the fragment language, built-in variables are intrinsically declared as:
in vec4 gl_FragCoord;
in bool gl_FrontFacing;
in float gl_ClipDistance[];
in vec2 gl_PointCoord;
in int gl_PrimitiveID;
in int gl_SampleID;
in vec2 gl_SamplePosition;
in int gl_SampleMaskIn[];
in int gl_Layer;
in int gl_ViewportIndex;
out float gl_FragDepth;
out int gl_SampleMask[];
|
он нужен растеризатору (и не только), потому до сих пор это встроенная переменная