glTexSubImage1D, glTextureSubImage1D — specify a one-dimensional texture subimage
void glTexSubImage1D(
|
GLenum target, |
GLint level, | |
GLint xoffset, | |
GLsizei width, | |
GLenum format, | |
GLenum type, | |
const GLvoid * pixels) ; |
void glTextureSubImage1D(
|
GLuint texture, |
GLint level, | |
GLint xoffset, | |
GLsizei width, | |
GLenum format, | |
GLenum type, | |
const void *pixels) ; |
target
Specifies the target to which the texture is bound for
glTexSubImage1D
.
Must be GL_TEXTURE_1D
.
texture
Specifies the texture object name for
glTextureSubImage1D
. The effective
target of texture
must be one of
the valid target
values above.
level
Specifies the level-of-detail number. Level 0 is the base image level. Level n is the nth mipmap reduction image.
xoffset
Specifies a texel offset in the x direction within the texture array.
width
Specifies the width of the texture subimage.
format
Specifies the format of the pixel data.
The following symbolic values are accepted:
GL_RED
,
GL_RG
,
GL_RGB
,
GL_BGR
,
GL_RGBA
,
GL_DEPTH_COMPONENT
, and
GL_STENCIL_INDEX
.
type
Specifies the data type of the pixel data.
The following symbolic values are accepted:
GL_UNSIGNED_BYTE
,
GL_BYTE
,
GL_UNSIGNED_SHORT
,
GL_SHORT
,
GL_UNSIGNED_INT
,
GL_INT
,
GL_FLOAT
,
GL_UNSIGNED_BYTE_3_3_2
,
GL_UNSIGNED_BYTE_2_3_3_REV
,
GL_UNSIGNED_SHORT_5_6_5
,
GL_UNSIGNED_SHORT_5_6_5_REV
,
GL_UNSIGNED_SHORT_4_4_4_4
,
GL_UNSIGNED_SHORT_4_4_4_4_REV
,
GL_UNSIGNED_SHORT_5_5_5_1
,
GL_UNSIGNED_SHORT_1_5_5_5_REV
,
GL_UNSIGNED_INT_8_8_8_8
,
GL_UNSIGNED_INT_8_8_8_8_REV
,
GL_UNSIGNED_INT_10_10_10_2
, and
GL_UNSIGNED_INT_2_10_10_10_REV
.
pixels
Specifies a pointer to the image data in memory.
Texturing maps a portion of a specified texture image
onto each graphical primitive for which texturing is enabled.
To enable or disable one-dimensional texturing, call glEnable
and glDisable
with argument GL_TEXTURE_1D
.
glTexSubImage1D
and
glTextureSubImage1D
redefine a contiguous
subregion of an existing one-dimensional texture image.
The texels referenced by pixels
replace the portion of the
existing texture array with x indices xoffset
and
If a non-zero named buffer object is bound to the GL_PIXEL_UNPACK_BUFFER
target
(see glBindBuffer) while a texture image is
specified, pixels
is treated as a byte offset into the buffer object's data store.
glPixelStore modes affect texture images.
glTexSubImage1D
and
glTextureSubImage1D
specify a
one-dimensional subtexture for the current texture unit,
specified with
glActiveTexture.
GL_STENCIL_INDEX
is accepted for format
only if the GL version
is 4.4 or higher.
GL_INVALID_ENUM
is generated if
target
or the effective target of
texture
is not one of the allowable
values.
GL_INVALID_OPERATION
is generated by
glTextureSubImage1D
if
texture
is not the name of an existing
texture object.
GL_INVALID_ENUM
is generated if format
is not an accepted
format constant.
GL_INVALID_ENUM
is generated if type
is not a type constant.
GL_INVALID_VALUE
is generated if level
is less than 0.
GL_INVALID_VALUE
may be generated if level
is greater
than
GL_MAX_TEXTURE_SIZE
.
GL_INVALID_VALUE
is generated if
GL_TEXTURE_WIDTH
, and
GL_TEXTURE_BORDER
of the texture image being modified.
Note that
GL_INVALID_VALUE
is generated if width
is less than 0.
GL_INVALID_OPERATION
is generated if the texture array has not
been defined by a previous glTexImage1D operation.
GL_INVALID_OPERATION
is generated if type
is one of
GL_UNSIGNED_BYTE_3_3_2
,
GL_UNSIGNED_BYTE_2_3_3_REV
,
GL_UNSIGNED_SHORT_5_6_5
, or
GL_UNSIGNED_SHORT_5_6_5_REV
and format
is not GL_RGB
.
GL_INVALID_OPERATION
is generated if type
is one of
GL_UNSIGNED_SHORT_4_4_4_4
,
GL_UNSIGNED_SHORT_4_4_4_4_REV
,
GL_UNSIGNED_SHORT_5_5_5_1
,
GL_UNSIGNED_SHORT_1_5_5_5_REV
,
GL_UNSIGNED_INT_8_8_8_8
,
GL_UNSIGNED_INT_8_8_8_8_REV
,
GL_UNSIGNED_INT_10_10_10_2
, or
GL_UNSIGNED_INT_2_10_10_10_REV
and format
is neither GL_RGBA
nor GL_BGRA
.
GL_INVALID_OPERATION
is generated if format
is GL_STENCIL_INDEX
and the base internal format is not GL_STENCIL_INDEX
.
GL_INVALID_OPERATION
is generated if a non-zero buffer object name is bound to the
GL_PIXEL_UNPACK_BUFFER
target and the buffer object's data store is currently mapped.
GL_INVALID_OPERATION
is generated if a non-zero buffer object name is bound to the
GL_PIXEL_UNPACK_BUFFER
target and the data would be unpacked from the buffer
object such that the memory reads required would exceed the data store size.
GL_INVALID_OPERATION
is generated if a non-zero buffer object name is bound to the
GL_PIXEL_UNPACK_BUFFER
target and pixels
is not evenly divisible
into the number of bytes needed to store in memory a datum indicated by type
.
OpenGL Version | ||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
Function / Feature Name | 2.0 | 2.1 | 3.0 | 3.1 | 3.2 | 3.3 | 4.0 | 4.1 | 4.2 | 4.3 | 4.4 | 4.5 |
glTexSubImage1D
|
✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
glTextureSubImage1D
|
- | - | - | - | - | - | - | - | - | - | - | ✔ |
glActiveTexture, glCopyTexImage1D, glCopyTexImage2D, glCopyTexSubImage1D, glCopyTexSubImage2D, glCopyTexSubImage3D, glPixelStore, glTexImage1D, glTexImage2D, glTexImage3D, glTexParameter, glTexSubImage2D, glTexSubImage3D
Copyright © 1991-2006 Silicon Graphics, Inc. Copyright © 2010-2014 Khronos Group. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.