arbfp1

> # NAME

> arbfp1 - OpenGL fragment profile for multi-vendor ARB_fragment_program extension

> # SYNOPSIS

>       arbfp1

> # DESCRIPTION

> This OpenGL profile corresponds to the per-fragment functionality introduced by GeForce FX and other DirectX 9 GPUs. This profile is supported by any OpenGL implementation that conformantly implements ARB_fragment_program.

> The compiler output for this profile conforms to the assembly format defined by ARB_fragment_program.

> Data-dependent loops are not allowed; all loops must be unrollable.

> Conditional expressions are supported without branching so both conditions must be evaluated.

> Relative indexing of uniform arrays is not supported; use texture accesses instead.

> # 3D API DEPENDENCIES

> Requires OpenGL support for the multi-vendor ARB_fragment_program extension. This extension is supported by GeForce FX and later GPUS. ATI GPUs also support this extension.

> # PROFILE OPTIONS

> NumTemps=n

>   Number of temporaries to use (from 12 to 32).

> MaxInstructionSlots=n

>   Maximum allowable (static) instructions. Not an issue for NVIDIA GPUs.

> NoDependentReadLimit=b

>   Boolean for whether a read limit exists.

> NumTexInstructions=n

>   Maximum number of texture instructions to generate. Not an issue for NVIDIA GPUs, but important for ATI GPUs (set it to 32).

> NumMathInstructions=n

>   Maximum number of math instructions to generate. Not an issue for NVIDIA GPUs, but important for ATI GPUs (set it to 64).

> MaxTexIndirections=n

>   Maximum number of texture indirections. Not an issue for NVIDIA GPUs, but important for ATI GPUs (set it to 4).

> ATI_draw_buffers

>   When multiple draw buffers are used, use the ATI_draw_buffers syntax so the generated code says `OPTION ATI_draw_buffers`. The default, if this option is not specified, is to use ARB_draw_buffers.

> ARB_draw_buffers

>   When multiple draw buffers are used, use the ARB_draw_buffers syntax so the generated code says `OPTION ARB_draw_buffers`. This option is the default.

> MaxDrawBuffers=n

>   Maximum draw buffers for use with ARB_draw_buffers. Set to 1 for NV3x GPUs. Use up to 4 for NV4x or ATI GPUs.

> MaxLocalParams=n

>   Maximum allowable local parameters.

> # DATA TYPES

> to-be-written

> # SEMANTICS

> ## VARYING INPUT SEMANTICS

> to-be-written

> ## UNIFORM INPUT SEMANTICS

> to-be-written

> ## OUTPUT SEMANTICS

> to-be-written

> # STANDARD LIBRARY ISSUES

> to-be-written

> # SEE ALSO

> arbvp1, fp40, gp4fp, cgGLSetOptimalOptions