glTexCoordPointer(3G)glTexCoordPointer(3G)NAMEglTexCoordPointer - define an array of texture coordinates
SYNOPSIS
void glTexCoordPointer(
GLint size,
GLenum type,
GLsizei stride,
const GLvoid *pointer );
PARAMETERS
Specifies the number of coordinates per array element. Must be 1, 2, 3
or 4. The initial value is 4. Specifies the data type of each texture
coordinate. Symbolic constants GL_SHORT, GL_INT, GL_FLOAT, or GL_DOUBLE
are accepted. The initial value is GL_FLOAT. Specifies the byte offset
between consecutive array elements. If stride is 0, the array elements
are understood to be tightly packed. The initial value is 0. Specifies
a pointer to the first coordinate of the first element in the array.
The initial value is 0.
DESCRIPTIONglTexCoordPointer() specifies the location and data of an array of tex‐
ture coordinates to use when rendering. size specifies the number of
coordinates per element, and must be 1, 2, 3, or 4. type specifies the
data type of each texture coordinate and stride specifies the byte
stride from one array element to the next allowing vertexes and
attributes to be packed into a single array or stored in separate
arrays. (Single-array storage may be more efficient on some implementa‐
tions; see glInterleavedArrays().) When a texture coordinate array is
specified, size, type, stride, and pointer are saved client-side state.
To enable and disable the texture coordinate array, call glEnable‐
ClientState() and glDisableClientState() with the argument GL_TEX‐
TURE_COORD_ARRAY. If enabled, the texture coordinate array is used when
glDrawArrays(), glDrawElements(), glDrawRangeElements() or glArrayEle‐
ment() is called.
Use glDrawArrays() to construct a sequence of primitives (all of the
same type) from prespecified vertex and vertex attribute arrays. Use
glArrayElement() to specify primitives by indexing vertexes and vertex
attributes and glDrawElements() to construct a sequence of primitives
by indexing vertexes and vertex attributes.
NOTESglTexCoordPointer() is available only if the GL version is 1.1 or
greater.
The texture coordinate array is initially disabled and it won't be
accessed when glArrayElement(), glDrawElements(), glDrawRangeEle‐
ments(), or glDrawArrays() is called.
Execution of glTexCoordPointer() is not allowed between the execution
of glBegin() and the corresponding execution of glEnd(), but an error
may or may not be generated. If no error is generated, the operation is
undefined.
glTexCoordPointer() is typically implemented on the client side with no
protocol.
The texture coordinate array parameters are client-side state and are
therefore not saved or restored by glPushAttrib() and glPopAttrib().
Use glPushClientAttrib() and glPopClientAttrib() instead.
When the GL_ARB_imaging extension is supported, glTexCoordPointer()
updates the texture coordinate array state of the active client texture
unit, specified with glClientActiveTextureARB().
ERRORS
GL_INVALID_VALUE is generated if size is not 1, 2, 3, or 4.
GL_INVALID_ENUM is generated if type is not an accepted value.
GL_INVALID_VALUE is generated if stride is negative.
ASSOCIATED GETSglIsEnabled() with argument GL_TEXTURE_COORD_ARRAY
glGet() with argument GL_TEXTURE_COORD_ARRAY_SIZE
glGet() with argument GL_TEXTURE_COORD_ARRAY_TYPE
glGetPointerv() with argument GL_TEXTURE_COORD_ARRAY_POINTER
SEE ALSOglClientActiveTextureARB(3), glArrayElement(3), glColorPointer(3),
glDrawArrays(3), glDrawElements(3), glDrawRangeElements(3), glEdgeFlag‐
Pointer(3), glEnable(3), glIndexPointer(3), glGetPointerv(3), glNormal‐
Pointer(3), glPopClientAttrib(3), , , glPushClientAttrib(3), glTexCo‐
ord(3), glVertexPointer(3),
glTexCoordPointer(3G)