NAME
glslf - OpenGL fragment profile for the OpenGL Shading Lanauge (GLSL)
SYNPOSIS
glslfDESCRIPTION
This OpenGL profile corresponds to the per-fragment functionality introduced by the OpenGL Shading Language.
The compiler output for this profile conforms to the language grammar defined by the OpenGL Shading Language specification.
3D API DEPENDENCIES
Requires OpenGL support for OpenGL 2.0.
PROFILE OPTIONS
None.
DATA TYPES
The Cg half and fixed data types are both mapped to float because GLSL lacks first-class half and fixed data types.
SEMANTICS
VARYING INPUT SEMANTICS
Binding Semantics Name Corresponding Data GLSL Equivalent COLOR Primary color (float4) gl_Color COLOR0 COL0 COL COLOR1 Secondary color (float4) gl_SecondaryColor COL1 TEXCOORD Texture coordinate set 0 gl_TexCoord[0] TEXCOORD# Texture coordinate set # gl_TexCoord[#] TEX#UNIFORM INPUT SEMANTICS
The Cg profiles for GLSL provide access to all the uniform constants and variables documented in Section 7.4 (Built-in Constants) and 7.5 (Built-in Uniform State) respectively of the OpenGL Shading Language specification found at:
www.opengl.org/documentation/glsl/ www.opengl.org/registry/doc/GLSLangSpec.Full.1.20.8.pdfExample:
glslf void main(float4 color : COLOR, out float4 ocol : COLOR) { ocol.xyz = mul(gl_NormalMatrix, color.xyz); ocol.w = 1; }OUTPUT SEMANTICS
The following standard fragment output semantics are supported:
Binding Semantics Name Corresponding Data GLSL Equivalent COLOR Output color (float4) gl_FragColor COLOR0 COL0 COL DEPTH Output depth (float) gl_FragDepth DEPRSTANDARD LIBRARY ISSUES
Fragment program Cg standard library routines are available.