NAME
glArrayElement
- render a vertex using the specified vertex array element
C SPECIFICATION
void ggllAArrrraayyEElleemmeenntt(
GLint _i )
delim $$
PARAMETERS
-
_i
-
Specifies an index into the enabled vertex data arrays.
DESCRIPTION
ggllAArrrraayyEElleemmeenntt commands are used within ggllBBeeggiinn/ggllEEnndd pairs to
specify vertex and attribute data for point, line, and polygon
primitives. If GGLL__VVEERRTTEEXX__AARRRRAAYY is enabled when ggllAArrrraayyEElleemmeenntt is called, a
single vertex is drawn, using
vertex and attribute data taken from location _i of the enabled
arrays. If GGLL__VVEERRTTEEXX__AARRRRAAYY is not enabled, no drawing occurs but
the attributes corresponding to the enabled arrays are modified.
Use ggllAArrrraayyEElleemmeenntt 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 per
individual triangle.
Changes made to array data between the execution of ggllBBeeggiinn and the
corresponding execution of ggllEEnndd may affect calls to ggllAArrrraayyEElleemmeenntt that are made
within the same ggllBBeeggiinn/ggllEEnndd period in non-sequential ways.
That is, a call to
ggllAArrrraayyEElleemmeenntt 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.
NOTES
ggllAArrrraayyEElleemmeenntt is available only if the GL version is 1.1 or greater.
ggllAArrrraayyEElleemmeenntt is included in display lists. If ggllAArrrraayyEElleemmeenntt 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.
SEE ALSO
ggllCClliieennttAAccttiivveeTTeexxttuurreeAARRBB((33GG)),
ggllCCoolloorrPPooiinntteerr((33GG)),
ggllDDrraawwAArrrraayyss((33GG)),
ggllEEddggeeFFllaaggPPooiinntteerr((33GG)),
ggllGGeettPPooiinntteerrvv((33GG)),
ggllIInnddeexxPPooiinntteerr((33GG)),
ggllIInntteerrlleeaavveeddAArrrraayyss((33GG)),
ggllNNoorrmmaallPPooiinntteerr((33GG)),
ggllTTeexxCCoooorrddPPooiinntteerr((33GG)),
ggllVVeerrtteexxPPooiinntteerr((33GG))