NAME¶
glGetTexLevelParameter - return texture parameter values for a specific level of
  detail
C SPECIFICATION¶
void
  glGetTexLevelParameterfv(GLenum target,
  GLint level, GLenum pname,
  GLfloat * params);
void
  glGetTexLevelParameteriv(GLenum target,
  GLint level, GLenum pname,
  GLint * params);
PARAMETERS¶
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 n is the nth 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_BORDER, GL_TEXTURE_RED_SIZE,
  GL_TEXTURE_GREEN_SIZE, GL_TEXTURE_BLUE_SIZE,
  GL_TEXTURE_ALPHA_SIZE, GL_TEXTURE_DEPTH_SIZE,
  GL_TEXTURE_COMPRESSED, and GL_TEXTURE_COMPRESSED_IMAGE_SIZE are
  accepted.
params
Returns the requested data.
DESCRIPTION¶
 
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 and borders, but a long skinny texture, or a
  texture without mipmaps and borders, 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. This value
  includes the border of the texture image. The initial value is 0.
 
GL_TEXTURE_HEIGHT
 
 
params returns a single value, the height of the texture image. This
  value includes the border of the texture image. The initial value is 0.
 
GL_TEXTURE_DEPTH
 
 
params returns a single value, the depth of the texture image. This value
  includes the border 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().
 
NOTES¶
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.
ERRORS¶
 
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 log 2
  
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.
SEE ALSO¶
 
glActiveTexture(), 
glGetTexParameter(), 
glCopyTexImage1D(),
  
glCopyTexImage2D(), 
glCopyTexSubImage1D(),
  
glCopyTexSubImage2D(), 
glCopyTexSubImage3D(),
  
glTexImage1D(), 
glTexImage2D(), 
glTexImage3D(),
  
glTexSubImage1D(), 
glTexSubImage2D(), 
glTexSubImage3D(),
  
glTexParameter()
COPYRIGHT¶
Copyright © 1991-2006 Silicon Graphics, Inc. Copyright © 2010 Khronos
  Group. This document is licensed under the SGI Free Software B License. For
  details, see 
http://oss.sgi.com/projects/FreeB/.