glEnableClientState — enable or disable client-side capability
void glEnableClientState (GLenum cap);
Specifies the capability to enable. Symbolic constants GL_COLOR_ARRAY
, GL_EDGE_FLAG_ARRAY
,
GL_FOG_COORD_ARRAY
, GL_INDEX_ARRAY
, GL_NORMAL_ARRAY
, GL_SECONDARY_COLOR_ARRAY
,
GL_TEXTURE_COORD_ARRAY
, and GL_VERTEX_ARRAY
are accepted.
void glDisableClientState (GLenum cap);
Specifies the capability to disable.
glEnableClientState and glDisableClientState enable or disable individual client-side capabilities. By default, all client-side capabilities are disabled. Both glEnableClientState and glDisableClientState take a single argument, cap, which can assume one of the following values:
If enabled, the color array is enabled for writing and used during rendering when glArrayElement, glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawArrays, or glMultiDrawElements is called. See glColorPointer.
If enabled, the edge flag array is enabled for writing and used during rendering when glArrayElement, glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawArrays, or glMultiDrawElements is called. See glEdgeFlagPointer.
If enabled, the fog coordinate array is enabled for writing and used during rendering when glArrayElement, glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawArrays, or glMultiDrawElements is called. See glFogCoordPointer.
If enabled, the index array is enabled for writing and used during rendering when glArrayElement, glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawArrays, or glMultiDrawElements is called. See glIndexPointer.
If enabled, the normal array is enabled for writing and used during rendering when glArrayElement, glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawArrays, or glMultiDrawElements is called. See glNormalPointer.
If enabled, the secondary color array is enabled for writing and used during rendering when glArrayElement, glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawArrays, or glMultiDrawElements is called. See glColorPointer.
If enabled, the texture coordinate array is enabled for writing and used during rendering when glArrayElement, glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawArrays, or glMultiDrawElements is called. See glTexCoordPointer.
If enabled, the vertex array is enabled for writing and used during rendering when glArrayElement, glDrawArrays, glDrawElements, glDrawRangeElements, glMultiDrawArrays, or glMultiDrawElements is called. See glVertexPointer.
glEnableClientState is available only if the GL version is 1.1 or greater.
GL_FOG_COORD_ARRAY
and GL_SECONDARY_COLOR_ARRAY
are available only if the GL version is 1.4 or greater.
For OpenGL versions 1.3 and greater, or when ARB_multitexture
is supported, enabling and disabling
GL_TEXTURE_COORD_ARRAY
affects the active client texture unit. The active client texture unit is controlled with
glClientActiveTexture.
GL_INVALID_ENUM
is generated if cap is not an accepted value.
glEnableClientState is not allowed between the execution of glBegin and the corresponding glEnd, but an error may or may not be generated. If no error is generated, the behavior is undefined.
glArrayElement, glClientActiveTexture, glColorPointer, glDrawArrays, glDrawElements, glEdgeFlagPointer, glFogCoordPointer, glEnable, glGetPointerv, glIndexPointer, glInterleavedArrays, glNormalPointer, glSecondaryColorPointer, glTexCoordPointer, glVertexPointer