101 lines
3.3 KiB
Plaintext
101 lines
3.3 KiB
Plaintext
'\" te
|
|
'\"! tbl|eqn | mmdoc
|
|
'\"macro stdmacro
|
|
.ds Vn Version 1.2
|
|
.ds Dt 24 September 1999
|
|
.ds Re Release 1.2.1
|
|
.ds Dp Jan 14 18:30
|
|
.ds Dm 01 edgeflagp
|
|
.ds Xs 49268 6 edgeflagpointer.gl
|
|
.TH GLEDGEFLAGPOINTER 3G
|
|
.SH NAME
|
|
.B "glEdgeFlagPointer
|
|
\- define an array of edge flags
|
|
|
|
.SH C SPECIFICATION
|
|
void \f3glEdgeFlagPointer\fP(
|
|
GLsizei \fIstride\fP,
|
|
.nf
|
|
.ta \w'\f3void \fPglEdgeFlagPointer( 'u
|
|
const GLvoid \fI*ptr\fP )
|
|
.fi
|
|
|
|
.EQ
|
|
delim $$
|
|
.EN
|
|
.SH PARAMETERS
|
|
.TP \w'\f2stride\fP\ \ 'u
|
|
\f2stride\fP
|
|
Specifies the byte offset between consecutive edge flags.
|
|
If \f2stride\fP is 0 (the initial value), the edge flags are understood
|
|
to be tightly packed in the array. The initial value is 0.
|
|
.TP
|
|
\f2ptr\fP
|
|
Specifies a pointer to the first edge flag in the array. The initial
|
|
value is zero.
|
|
.SH DESCRIPTION
|
|
\%\f3glEdgeFlagPointer\fP specifies the location and data of an array of boolean edge
|
|
flags to use when rendering. \f2stride\fP specifies the byte stride from one
|
|
edge flag to the next allowing vertices and attributes
|
|
to be packed into a single array or stored in separate arrays.
|
|
(Single-array storage may be more efficient on some implementations;
|
|
see \%\f3glInterleavedArrays\fP.)
|
|
.P
|
|
When an edge flag array is
|
|
specified, \f2stride\fP and \f2ptr\fP are saved as client-side
|
|
state.
|
|
.P
|
|
To enable and disable the edge flag array, call \%\f3glEnableClientState\fP and
|
|
.br
|
|
\%\f3glDisableClientState\fP with
|
|
the argument \%\f3GL_EDGE_FLAG_ARRAY\fP. If enabled, the edge flag array is used
|
|
when \%\f3glDrawArrays\fP, \%\f3glDrawElements\fP, or \%\f3glArrayElement\fP is called.
|
|
.P
|
|
Use \%\f3glDrawArrays\fP to construct a sequence of primitives (all of
|
|
the same type)
|
|
from prespecified vertex and vertex attribute arrays.
|
|
Use \%\f3glArrayElement\fP to specify primitives
|
|
by indexing vertices and vertex attributes and \%\f3glDrawElements\fP to
|
|
construct a sequence of primitives by indexing vertices and vertex attributes.
|
|
.SH NOTES
|
|
\%\f3glEdgeFlagPointer\fP is available only if the GL version is 1.1 or greater.
|
|
.P
|
|
The edge flag array is initially disabled and it won't be accessed when
|
|
.br
|
|
\%\f3glArrayElement\fP, \%\f3glDrawElements\fP or \%\f3glDrawArrays\fP is called.
|
|
.P
|
|
Execution of \%\f3glEdgeFlagPointer\fP is not allowed between the execution of
|
|
\%\f3glBegin\fP and the corresponding execution of \%\f3glEnd\fP,
|
|
but an error may or may not be generated. If no error is generated,
|
|
the operation is undefined.
|
|
.P
|
|
\%\f3glEdgeFlagPointer\fP is typically implemented on the client side.
|
|
.P
|
|
Edge flag array parameters are client-side state and are therefore
|
|
not saved or restored by \%\f3glPushAttrib\fP and \%\f3glPopAttrib\fP.
|
|
Use \%\f3glPushClientAttrib\fP and
|
|
.br
|
|
\%\f3glPopClientAttrib\fP instead.
|
|
.SH ERRORS
|
|
\%\f3GL_INVALID_ENUM\fP is generated if \f2stride\fP is negative.
|
|
.SH ASSOCIATED GETS
|
|
\%\f3glIsEnabled\fP with argument \%\f3GL_EDGE_FLAG_ARRAY\fP
|
|
.br
|
|
\%\f3glGet\fP with argument \%\f3GL_EDGE_FLAG_ARRAY_STRIDE\fP
|
|
.br
|
|
\%\f3glGetPointerv\fP with argument \%\f3GL_EDGE_FLAG_ARRAY_POINTER\fP
|
|
.SH SEE ALSO
|
|
\%\f3glArrayElement(3G)\fP,
|
|
\%\f3glColorPointer(3G)\fP,
|
|
\%\f3glDrawArrays(3G)\fP,
|
|
\%\f3glDrawElements(3G)\fP,
|
|
\%\f3glEnable(3G)\fP,
|
|
\%\f3glGetPointerv(3G)\fP,
|
|
\%\f3glIndexPointer(3G)\fP,
|
|
\%\f3glNormalPointer(3G)\fP,
|
|
\%\f3glPopClientAttrib(3G)\fP,
|
|
.br
|
|
\%\f3glPushClientAttrib(3G)\fP,
|
|
\%\f3glTexCoordPointer(3G)\fP,
|
|
\%\f3glVertexPointer(3G)\fP
|