fp40 - OpenGL fragment profile for NVIDIA GeForce 6/7 Series, NV4x-based Quadro FX
This OpenGL profile corresponds to the per-fragment functionality
introduced by the GeForce 6800 and other NV4x-based NVIDIA GPUs.
The compiler output for this profile conforms to the assembly format
defined by NV_fragment_program2.
Data-dependent loops are allowed with a limit of 256 iterations
maximum. Four levels of nesting are allowed.
Conditional expressions can be supported with data-dependent branching.
Relative indexing of uniform arrays is not supported; use texture
3D Api Dependencies
Requires OpenGL support for the NV_fragment_program2 extension. These
extensions were introduced by the GeForce 6800 and other NV4x-based GPUs.
Opengl Extension Specifications
The fixed data type corresponds to a native signed fixed-point integers
with the range [-2.0,+2.0), sometimes called fx12. This type provides
10 fractional bits of precision.
The half data type corresponds to a floating-point encoding with a sign bit,
10 mantissa bits, and 5 exponent bits (biased by 16), sometimes called s10e5.
The half data type corresponds to a standard IEEE 754 single-precision
floating-point encoding with a sign bit, 23 mantissa bits, and 8 exponent
bits (biased by 128), sometimes called s10e5.
Varying Input Semantics
The varying input semantics in the fp40 profile correspond to the
respectively named varying output semantics of the vp40 profile.
Binding Semantics Name Corresponding Data
COLOR Input primary color
COLOR1 Input secondary color
TEX0 Input texture coordinate sets 0
TEX1 Input texture coordinate sets 1
TEX2 Input texture coordinate sets 2
TEX3 Input texture coordinate sets 3
TEX4 Input texture coordinate sets 4
TEX5 Input texture coordinate sets 5
TEX6 Input texture coordinate sets 6
TEX7 Input texture coordinate sets 7
FOGP Input fog color (XYZ) and factor (W)
FACE Polygon facing.
+1 for front-facing polygon or line or point
-1 for back-facing polygon
Uniform Input Semantics
Sixteen texture units are supported:
Binding Semantic Name Corresponding Data
TEXUNIT0 Texture unit 0
TEXUNIT1 Texture unit 1
TEXUNIT15 Texture unit 15
COLOR Output color (float4)
DEPTH Output depth (float)
Standard Library Issues
Functions that compute partial derivatives are supported.