glTexCoord
Prev | GL | Next

## Name

glTexCoord1d, glTexCoord1f, glTexCoord1i, glTexCoord1s, glTexCoord2d, glTexCoord2f, glTexCoord2i, glTexCoord2s, glTexCoord3d, glTexCoord3f, glTexCoord3i, glTexCoord3s, glTexCoord4d, glTexCoord4f, glTexCoord4i, glTexCoord4s, glTexCoord1dv, glTexCoord1fv, glTexCoord1iv, glTexCoord1sv, glTexCoord2dv, glTexCoord2fv, glTexCoord2iv, glTexCoord2sv, glTexCoord3dv, glTexCoord3fv, glTexCoord3iv, glTexCoord3sv, glTexCoord4dv, glTexCoord4fv, glTexCoord4iv, glTexCoord4sv — set the current texture coordinates

## C Specification

`void `glTexCoord1d`` | `(` | `GLdouble `s`);`
`void `glTexCoord1f`` | `(` | `GLfloat `s`);`
`void `glTexCoord1i`` | `(` | `GLint `s`);`
`void `glTexCoord1s`` | `(` | `GLshort `s`);`
`void `glTexCoord2d`` | `(` | `GLdouble `s`, GLdouble `t`);`
`void `glTexCoord2f`` | `(` | `GLfloat `s`, GLfloat `t`);`
`void `glTexCoord2i`` | `(` | `GLint `s`, GLint `t`);`
`void `glTexCoord2s`` | `(` | `GLshort `s`, GLshort `t`);`
`void `glTexCoord3d`` | `(` | `GLdouble `s`, GLdouble `t`, GLdouble `r`);`
`void `glTexCoord3f`` | `(` | `GLfloat `s`, GLfloat `t`, GLfloat `r`);`
`void `glTexCoord3i`` | `(` | `GLint `s`, GLint `t`, GLint `r`);`
`void `glTexCoord3s`` | `(` | `GLshort `s`, GLshort `t`, GLshort `r`);`
`void `glTexCoord4d`` | `(` | `GLdouble `s`, GLdouble `t`, GLdouble `r`, GLdouble `q`);`
`void `glTexCoord4f`` | `(` | `GLfloat `s`, GLfloat `t`, GLfloat `r`, GLfloat `q`);`
`void `glTexCoord4i`` | `(` | `GLint `s`, GLint `t`, GLint `r`, GLint `q`);`
`void `glTexCoord4s`` | `(` | `GLshort `s`, GLshort `t`, GLshort `r`, GLshort `q`);`

## Python Specification

``glTexCoord1d`` | `(` | ``s`) → `None``
``glTexCoord1f`` | `(` | ``s`) → `None``
``glTexCoord1i`` | `(` | ``s`) → `None``
``glTexCoord1s`` | `(` | ``s`) → `None``
``glTexCoord2d`` | `(` | ``s`, `t`) → `None``
``glTexCoord2f`` | `(` | ``s`, `t`) → `None``
``glTexCoord2i`` | `(` | ``s`, `t`) → `None``
``glTexCoord2s`` | `(` | ``s`, `t`) → `None``
``glTexCoord3d`` | `(` | ``s`, `t`, `r`) → `None``
``glTexCoord3f`` | `(` | ``s`, `t`, `r`) → `None``
``glTexCoord3i`` | `(` | ``s`, `t`, `r`) → `None``
``glTexCoord3s`` | `(` | ``s`, `t`, `r`) → `None``
``glTexCoord4d`` | `(` | ``s`, `t`, `r`, `q`) → `None``
``glTexCoord4f`` | `(` | ``s`, `t`, `r`, `q`) → `None``
``glTexCoord4i`` | `(` | ``s`, `t`, `r`, `q`) → `None``
``glTexCoord4s`` | `(` | ``s`, `t`, `r`, `q`) → `None``

## Parameters

`s`, `t`, `r`, `q`
  Specify `s`, `t`, `r`, and `q` texture coordinates. Not all parameters are present in all forms of the command.

## C Specification

`void `glTexCoord1dv`` | `(` | `const GLdouble *`v`);`
`void `glTexCoord1fv`` | `(` | `const GLfloat *`v`);`
`void `glTexCoord1iv`` | `(` | `const GLint *`v`);`
`void `glTexCoord1sv`` | `(` | `const GLshort *`v`);`
`void `glTexCoord2dv`` | `(` | `const GLdouble *`v`);`
`void `glTexCoord2fv`` | `(` | `const GLfloat *`v`);`
`void `glTexCoord2iv`` | `(` | `const GLint *`v`);`
`void `glTexCoord2sv`` | `(` | `const GLshort *`v`);`
`void `glTexCoord3dv`` | `(` | `const GLdouble *`v`);`
`void `glTexCoord3fv`` | `(` | `const GLfloat *`v`);`
`void `glTexCoord3iv`` | `(` | `const GLint *`v`);`
`void `glTexCoord3sv`` | `(` | `const GLshort *`v`);`
`void `glTexCoord4dv`` | `(` | `const GLdouble *`v`);`
`void `glTexCoord4fv`` | `(` | `const GLfloat *`v`);`
`void `glTexCoord4iv`` | `(` | `const GLint *`v`);`
`void `glTexCoord4sv`` | `(` | `const GLshort *`v`);`

## Python Specification

``glTexCoord1dv`` | `(` | ``v`) → `None``
``glTexCoord1fv`` | `(` | ``v`) → `None``
``glTexCoord1iv`` | `(` | ``v`) → `None``
``glTexCoord1sv`` | `(` | ``v`) → `None``
``glTexCoord2dv`` | `(` | ``v`) → `None``
``glTexCoord2fv`` | `(` | ``v`) → `None``
``glTexCoord2iv`` | `(` | ``v`) → `None``
``glTexCoord2sv`` | `(` | ``v`) → `None``
``glTexCoord3dv`` | `(` | ``v`) → `None``
``glTexCoord3fv`` | `(` | ``v`) → `None``
``glTexCoord3iv`` | `(` | ``v`) → `None``
``glTexCoord3sv`` | `(` | ``v`) → `None``
``glTexCoord4dv`` | `(` | ``v`) → `None``
``glTexCoord4fv`` | `(` | ``v`) → `None``
``glTexCoord4iv`` | `(` | ``v`) → `None``
``glTexCoord4sv`` | `(` | ``v`) → `None``

## Parameters

`v`
  Specifies a pointer to an array of one, two, three, or four elements, which in turn specify the `s`, `t`, `r`, and `q` texture coordinates.

## Description

`glTexCoord` specifies texture coordinates in one, two, three, or four dimensions. `glTexCoord1` sets the current texture coordinates to (`s`, 0, 0, 1); a call to

`glTexCoord2` sets them to (`s`, `t`, 0, 1). Similarly, `glTexCoord3` specifies the texture coordinates as (`s`, `t`, `r`, 1), and `glTexCoord4` defines all four components explicitly as (`s`, `t`, `r`, `q`).

The current texture coordinates are part of the data that is associated with each vertex and with the current raster position. Initially, the values for `s`, `t`, `r`, and `q` are (0, 0, 0, 1).

## Notes

The current texture coordinates can be updated at any time. In particular, `glTexCoord` can be called between a call to `glBegin` and the corresponding call to `glEnd`.

When the `GL_ARB_imaging` extension is supported, `glTexCoord` always updates texture unit `GL_TEXTURE0_ARB`.

## Associated Gets

`glGet` with argument `GL_CURRENT_TEXTURE_COORDS`

## See Also

glTexCoordPointer, glVertex

Prev | Up | Next
glStencilOp | Home | glTexCoordPointer