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) ; |
void glGetTextureLevelParameterfv(
|
GLuint texture, |
GLint level, | |
GLenum pname, | |
GLfloat *params) ; |
void glGetTextureLevelParameteriv(
|
GLuint texture, |
GLint level, | |
GLenum pname, | |
GLint *params) ; |
target
Specifies the target to which the texture is bound for
glGetTexLevelParameterfv
and
glGetTexLevelParameteriv
functions. Must be one
of the following values: 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
.
texture
Specifies the texture object name for
glGetTextureLevelParameterfv
and
glGetTextureLevelParameteriv
functions.
level
Specifies the level-of-detail number of the desired image. Level 0 is the base image level. Level is the th mipmap reduction image.
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.
glGetTexLevelParameterfv
,
glGetTexLevelParameteriv
,
glGetTextureLevelParameterfv
and
glGetTextureLevelParameteriv
return in
params
texture parameter values for a specific
level-of-detail value, specified as level
. For the
first two functions, 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
. The remaining two take a
texture
argument which specifies the name of the
texture object.
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
and
glGetTextureLevelParameter
, 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_OPERATION
is generated by
glGetTextureLevelParameterfv
and
glGetTextureLevelParameteriv
functions if
texture
is not the name of an existing texture
object.
GL_INVALID_ENUM
is generated by
glGetTexLevelParameterfv
and
glGetTexLevelParameteriv
functions 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 max, where
max is the returned value of
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.
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 |
glGetTexLevelParameterfv
|
✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
glGetTexLevelParameteriv
|
✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ | ✔ |
glGetTextureLevelParameterfv
|
- | - | - | - | - | - | - | - | - | - | - | ✔ |
glGetTextureLevelParameteriv
|
- | - | - | - | - | - | - | - | - | - | - | ✔ |
glActiveTexture, glGetTexParameter, glCopyTexImage1D, glCopyTexImage2D, glCopyTexSubImage1D, glCopyTexSubImage2D, glCopyTexSubImage3D, glTexImage1D, glTexImage2D, glTexImage3D, glTexSubImage1D, glTexSubImage2D, glTexSubImage3D, glTexParameter
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 https://khronos.org/registry/OpenGL-Refpages/LICENSES/LicenseRef-FreeB.txt.