glGetTexLevelParameter — return texture parameter values for a specific level of detail
void glGetTexLevelParameterfv( | GLenum target, |
GLint level, | |
GLenum pname, | |
GLfloat * params) ; |
void glGetTexLevelParameteriv( | GLenum target, |
GLint level, | |
GLenum pname, | |
GLint * params) ; |
target
Specifies the symbolic name of the target texture,
one of
GL_TEXTURE_1D
,
GL_TEXTURE_2D
,
GL_TEXTURE_3D
,
GL_TEXTURE_1D_ARRAY
,
GL_TEXTURE_2D_ARRAY
,
GL_TEXTURE_RECTANGLE
,
GL_TEXTURE_2D_MULTISAMPLE
,
GL_TEXTURE_2D_MULTISAMPLE_ARRAY
,
GL_TEXTURE_CUBE_MAP_POSITIVE_X
,
GL_TEXTURE_CUBE_MAP_NEGATIVE_X
,
GL_TEXTURE_CUBE_MAP_POSITIVE_Y
,
GL_TEXTURE_CUBE_MAP_NEGATIVE_Y
,
GL_TEXTURE_CUBE_MAP_POSITIVE_Z
,
GL_TEXTURE_CUBE_MAP_NEGATIVE_Z
,
GL_PROXY_TEXTURE_1D
,
GL_PROXY_TEXTURE_2D
,
GL_PROXY_TEXTURE_3D
,
GL_PROXY_TEXTURE_1D_ARRAY
,
GL_PROXY_TEXTURE_2D_ARRAY
,
GL_PROXY_TEXTURE_RECTANGLE
,
GL_PROXY_TEXTURE_2D_MULTISAMPLE
,
GL_PROXY_TEXTURE_2D_MULTISAMPLE_ARRAY
,
GL_PROXY_TEXTURE_CUBE_MAP
, or
GL_TEXTURE_BUFFER
.
level
Specifies the level-of-detail number of the desired image.
Level 0 is the base image level.
Level
pname
Specifies the symbolic name of a texture parameter.
GL_TEXTURE_WIDTH
,
GL_TEXTURE_HEIGHT
,
GL_TEXTURE_DEPTH
,
GL_TEXTURE_INTERNAL_FORMAT
,
GL_TEXTURE_RED_SIZE
,
GL_TEXTURE_GREEN_SIZE
,
GL_TEXTURE_BLUE_SIZE
,
GL_TEXTURE_ALPHA_SIZE
,
GL_TEXTURE_DEPTH_SIZE
,
GL_TEXTURE_COMPRESSED
,
GL_TEXTURE_COMPRESSED_IMAGE_SIZE
, and
GL_TEXTURE_BUFFER_OFFSET
are accepted.
params
Returns the requested data.
glGetTexLevelParameter
returns in params
texture parameter values for a specific
level-of-detail value,
specified as level
.
target
defines the target texture,
either GL_TEXTURE_1D
, GL_TEXTURE_2D
, GL_TEXTURE_3D
,
GL_PROXY_TEXTURE_1D
,
GL_PROXY_TEXTURE_2D
,
GL_PROXY_TEXTURE_3D
,
GL_TEXTURE_CUBE_MAP_POSITIVE_X
,
GL_TEXTURE_CUBE_MAP_NEGATIVE_X
,
GL_TEXTURE_CUBE_MAP_POSITIVE_Y
,
GL_TEXTURE_CUBE_MAP_NEGATIVE_Y
,
GL_TEXTURE_CUBE_MAP_POSITIVE_Z
,
GL_TEXTURE_CUBE_MAP_NEGATIVE_Z
, or
GL_PROXY_TEXTURE_CUBE_MAP
.
GL_MAX_TEXTURE_SIZE
, and GL_MAX_3D_TEXTURE_SIZE
are not really
descriptive enough.
It has to report the largest square texture image that can be
accommodated with mipmaps
but a long skinny texture, or a texture without mipmaps may
easily fit in texture memory.
The proxy targets allow the user to more accurately query
whether the GL can accommodate a texture of a given configuration.
If the texture cannot be accommodated, the texture state variables, which
may be queried with glGetTexLevelParameter
, are set to 0. If the texture can be accommodated,
the texture state values will be set as they would be set for a
non-proxy target.
pname
specifies the texture parameter whose value or values
will be returned.
The accepted parameter names are as follows:
GL_TEXTURE_WIDTH
params
returns a single value,
the width of the texture image.
The initial value is 0.
GL_TEXTURE_HEIGHT
params
returns a single value,
the height of the texture image.
The initial value is 0.
GL_TEXTURE_DEPTH
params
returns a single value,
the depth of the texture image.
The initial value is 0.
GL_TEXTURE_INTERNAL_FORMAT
params
returns a single value,
the internal format of the texture image.
GL_TEXTURE_RED_TYPE
,GL_TEXTURE_GREEN_TYPE
,GL_TEXTURE_BLUE_TYPE
,GL_TEXTURE_ALPHA_TYPE
,GL_TEXTURE_DEPTH_TYPE
The data type used to store the component.
The types GL_NONE
, GL_SIGNED_NORMALIZED
,
GL_UNSIGNED_NORMALIZED
, GL_FLOAT
,
GL_INT
, and GL_UNSIGNED_INT
may be returned
to indicate signed normalized fixed-point, unsigned normalized fixed-point, floating-point, integer unnormalized, and
unsigned integer unnormalized components, respectively.
GL_TEXTURE_RED_SIZE
,GL_TEXTURE_GREEN_SIZE
,GL_TEXTURE_BLUE_SIZE
,GL_TEXTURE_ALPHA_SIZE
,GL_TEXTURE_DEPTH_SIZE
The internal storage resolution of an individual component. The resolution chosen by the GL will be a close match for the resolution requested by the user with the component argument of glTexImage1D, glTexImage2D, glTexImage3D, glCopyTexImage1D, and glCopyTexImage2D. The initial value is 0.
GL_TEXTURE_COMPRESSED
params
returns a single boolean value indicating if the texture image is
stored in a compressed internal format. The initiali value is GL_FALSE
.
GL_TEXTURE_COMPRESSED_IMAGE_SIZE
params
returns a single integer value, the number of unsigned bytes of the
compressed texture image that would be returned from
glGetCompressedTexImage.
GL_TEXTURE_BUFFER_OFFSET
params
returns a single integer value, the offset into the
data store of the buffer bound to a buffer texture.
glTexBufferRange.
GL_TEXTURE_BUFFER_SIZE
params
returns a single integer value, the size of the range of a
data store of the buffer bound to a buffer texture.
glTexBufferRange.
If an error is generated,
no change is made to the contents of params
.
glGetTexLevelParameter
returns the texture level parameters for the active texture unit.
GL_TEXTURE_BUFFER_OFFSET
and GL_TEXTURE_BUFFER_SIZE
are available only
if the GL version is 4.3 or greater.
GL_INVALID_ENUM
is generated if target
or pname
is not an
accepted value.
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 target
is GL_TEXTURE_BUFFER
and level
is not zero.
GL_INVALID_OPERATION
is generated if
GL_TEXTURE_COMPRESSED_IMAGE_SIZE
is queried on texture images with an
uncompressed internal format or on proxy targets.
glActiveTexture, glGetTexParameter, glCopyTexImage1D, glCopyTexImage2D, glCopyTexSubImage1D, glCopyTexSubImage2D, glCopyTexSubImage3D, glTexImage1D, glTexImage2D, glTexImage3D, glTexSubImage1D, glTexSubImage2D, glTexSubImage3D, glTexParameter
Copyright © 1991-2006 Silicon Graphics, Inc. Copyright © 2010-2013 Khronos Group. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.