Back to the OpenGL extension cross reference

GL_NV_vertex_array_range2


Name


    NV_vertex_array_range2

Name Strings


    GL_NV_vertex_array_range2

Contact


    Mark J. Kilgard, NVIDIA Corporation (mjk 'at' nvidia.com)

Notice


    Copyright NVIDIA Corporation, 2001.

IP Status


    NVIDIA Proprietary.

Status


    Complete

Version


    NVIDIA Date: April 13, 2001
$Date: 2001/04/04 $ $Revision: #1 $
$Id: //sw/main/docs/OpenGL/specs/GL_NV_vertex_array_range2.txt#1 $

Number


    232

Dependencies


    Assumes support for the NV_vertex_array_range extension (version 1.1).

Support for NV_fence is recommended but not required.

Overview


    Enabling and disabling the vertex array range is specified by the
original NV_vertex_array_range extension specification to flush the
vertex array range implicitly. In retrospect, this semantic is
extremely misconceived and creates terrible performance problems
for any application that wishes to mix conventional vertex arrays
with vertex arrange range-enabled vertex arrays.

This extension provides a new token for enabling/disabling the
vertex array range that does NOT perform an implicit vertex array
range flush when the enable/disable is performed.

Issues


    Should this extension expose a new enable that enables/disables the
vertex array range enable/disable semantic of performing an implicit
'vertex array range flush' when GL_VERTEX_ARRAY_RANGE_NV is enabled
or disabled, OR should it add a new enable token that acts identically
to GL_VERTEX_ARRAY_RANGE_NV without the implicit flush?

RESOLUTION: The second option. Enabling/disabling
GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV acts identically to
enabling/disabling GL_VERTEX_ARRAY_RANGE_NV, just without the
implicit flush.

Should GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV work with glIsEnabled?

RESOLUTION: NO. There is still just a single state boolean to
query.

New Procedures and Functions


    None

New Tokens


    Accepted by the <cap> parameter of EnableClientState,
DisableClientState:

VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV 0x8533

Additions to Chapter 2 of the OpenGL 1.1 Specification (OpenGL Operation)


    Within the discussion of vertex arrays (Section 2.8) amended by
the NV_vertex_array_range extension specification, change the
discussion of enabling the vertex array range to:

The vertex array range is enabled or disabled by calling
EnableClientState or DisableClientState with the symbolic
constant VERTEX_ARRAY_RANGE_NV.

The vertex array range is also enabled or disabled by calling
EnableClientState or DisableClientState with the symbolic constant
VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV. This second means to enable
and disable the vertex array range does not perform an implicit
vertex array range flush as described subsequently."

Within the discussion of vertex arrays (Section 2.8) amended by the
NV_vertex_array_range extension specification, change the discussion
of implicit vertex array range flushes to:

"A 'vertex array range flush' occurs when one of the following
operations occur:

o Finish returns.

o FlushVertexArrayRangeNV returns.

o VertexArrayRangeNV returns.

o DisableClientState of VERTEX_ARRAY_RANGE_NV returns.

o EnableClientState of VERTEX_ARRAY_RANGE_NV returns.

o Another OpenGL context is made current.

However, use of VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV with
DisableClientState or EnableClientState does NOT perform an implicit
vertex array range flush."

Additions to Chapter 5 of the OpenGL 1.1 Specification (Special Functions)


    None

Additions to the WGL interface:


    None

Additions to the GLX Specification


    None

GLX Protocol


    None

Errors


    No new errors.

New State


    None

New Implementation Dependent State


    None

Revision History


    4/13/2001 - token value for GL_VERTEX_ARRAY_RANGE_WITHOUT_FLUSH_NV
should be 0x8533 (was incorrectly typed as 0x8503)

Implementation Support


   List of OpenGL implementations supporting the GL_NV_vertex_array_range2 extension

Original File


   Original text file for the GL_NV_vertex_array_range2 extension


Page generated on Sun Nov 20 18:39:28 2005