> # NAME

> vp40 - OpenGL vertex profile for NV4x (GeForce 6xxx and 7xxx Series, NV4x-based Quadro FX, etc.)

> # SYNOPSIS

>       vp40

> # DESCRIPTION

> This OpenGL profile corresponds to the per-vertex 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_vertex_program3 and ARB_vertex_program.

> Data-dependent loops and branching are allowed.

> Relative indexing of uniform arrays is supported.

> Texture accesses are supported. However substantial limitations on vertex texturing exist for hardware acceleration by NV4x hardware.

> NV4x hardware accelerates vertex fetches only for 1-, 3-, and 4-component floating-point textures. NV4x hardware does not accelerated vertex-texturing for cube maps or 3D textures. NV4x does allow non-power-of-two sizes (width and height).

> # 3D API DEPENDENCIES

> Requires OpenGL support for the NV_fragment_program3 extension. These extensions were introduced by the GeForce 6800 and other NV4x-based GPUs.

> # PROFILE OPTIONS

> None.

> # 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