glArrayElement — render a vertex using the specified vertex array element
void glArrayElement( | GLint | i) ; |
glArrayElement
commands are used within glBegin/glEnd pairs to
specify vertex and attribute data for point, line, and polygon
primitives. If GL_VERTEX_ARRAY
is enabled when glArrayElement
is called, a
single vertex is drawn, using
vertex and attribute data taken from location i
of the enabled
arrays. If GL_VERTEX_ARRAY
is not enabled, no drawing occurs but
the attributes corresponding to the enabled arrays are modified.
Use glArrayElement
to construct primitives by indexing vertex data, rather than
by streaming through arrays of data in first-to-last order. Because
each call specifies only a single vertex, it is possible to explicitly
specify per-primitive attributes such as a single normal for each
triangle.
Changes made to array data between the execution of glBegin and the
corresponding execution of glEnd may affect calls to glArrayElement
that are made
within the same glBegin/glEnd period in nonsequential ways.
That is, a call to
glArrayElement
that precedes a change to array data may
access the changed data, and a call that follows a change to array data
may access original data.
glArrayElement
is available only if the GL version is 1.1 or greater.
glArrayElement
is included in display lists. If glArrayElement
is entered into a
display list, the necessary array data (determined by the array
pointers and enables) is also entered into the display list. Because
the array pointers and enables are client-side state, their values
affect display lists when the lists are created, not when the lists
are executed.
GL_INVALID_VALUE
may be generated if i
is negative.
GL_INVALID_OPERATION
is generated if a non-zero buffer object name is bound to an
enabled array and the buffer object's data store is currently mapped.
glClientActiveTexture, glColorPointer, glDrawArrays, glEdgeFlagPointer, glFogCoordPointer, glGetPointerv, glIndexPointer, glInterleavedArrays, glNormalPointer, glSecondaryColorPointer, glTexCoordPointer, glVertexPointer
Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.