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 | 4.6 |
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.