GLint GLAPIENTRY gluBuild2DMipmapLevels( GLenum target,
                                                GLint internalFormat,
                                                GLsizei width,
                                                GLsizei height,
                                                GLenum format,
                                                GLenum type,
                                                GLint level,
                                                GLint base,
                                                GLint max,
                                                const void *data )

PARAMETERS
       target          Specifies the target texture.  Must be GL_TEXTURE_2D.

       internalFormat  Requests the internal storage format of the texture  im‐
                       age.   Must  be 1, 2, 3, 4, or one of the following sym‐
                       bolic   constants:   GL_ALPHA,   GL_ALPHA4,   GL_ALPHA8,
                       GL_ALPHA12,   GL_ALPHA16,  GL_LUMINANCE,  GL_LUMINANCE4,
                       GL_LUMINANCE8,      GL_LUMINANCE12,      GL_LUMINANCE16,
                       GL_LUMINANCE_ALPHA,                GL_LUMINANCE4_ALPHA4,
                       GL_LUMINANCE6_ALPHA2,              GL_LUMINANCE8_ALPHA8,
                       GL_LUMINANCE12_ALPHA4,           GL_LUMINANCE12_ALPHA12,
                       GL_LUMINANCE16_ALPHA16,   GL_INTENSITY,   GL_INTENSITY4,
                       GL_INTENSITY8,  GL_INTENSITY12,  GL_INTENSITY16, GL_RGB,
                       GL_R3_G3_B2,  GL_RGB4,   GL_RGB5,   GL_RGB8,   GL_RGB10,
                       GL_RGB12,   GL_RGB16,   GL_RGBA,   GL_RGBA2,   GL_RGBA4,
                       GL_RGB5_A1,   GL_RGBA8,   GL_RGB10_A2,   GL_RGBA12    or
                       GL_RGBA16.

       width, height   Specifies  the width and height, respectively, in pixels
                       of the texture image.  These should be a power of 2.

       format          Specifies the format of the pixel data.  Must be one  of
                       GL_COLOR_INDEX,  GL_DEPTH_COMPONENT,  GL_RED,  GL_GREEN,
                       GL_BLUE, GL_ALPHA,  GL_RGB,  GL_RGBA,  GL_BGR,  GL_BGRA,
                       GL_LUMINANCE, or GL_LUMINANCE_ALPHA.

       type            Specifies  the  data  type  for  data.   Must  be one of
                       GL_UNSIGNED_BYTE, GL_BYTE, GL_BITMAP, 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
                       or GL_UNSIGNED_INT_2_10_10_10_REV.

       level           Specifies the mipmap level of the image data.

       base            Specifies  the  minimum mipmap level to pass to glTexIm‐

       A series of mipmap levels from base to max is built by  decimating  data
       in  half along both dimensions until size 1×1 is reached. At each level,
       each texel in the halved mipmap level is an average of the corresponding
       four  texels in the larger mipmap level. (In the case of rectangular im‐
       ages, the decimation will ultimately reach an N×1 or 1×N  configuration.
       Here,  two texels are averaged instead.)  glTexImage2D is called to load
       these mipmap levels from base to max. If max is larger than the  highest
       mipmap  level  for  the  texture of the specified size, then a GLU error
       code is returned (see gluErrorString) and nothing is loaded.

       For example, if level is 2 and width is 16 and height is 8, the  follow‐
       ing  levels  are possible: 16×8, 8×4, 4×2, 2×1, 1×1. These correspond to
       levels 2 through 6 respectively.  If base is 3 and max is 5,  then  only
       mipmap  levels 8×4, 4×2 and 2×1 are loaded. However, if max is 7 then an
       error is returned and nothing is loaded since max  is  larger  than  the
       highest mipmap level which is, in this case, 6.

       The   highest   mipmap   level   can   be   derived   from  the  formula
       log2(max(width,height)*(2^level)).

       See the glTexImage1D reference page for a description of the  acceptable
       values  for  format parameter. See the glDrawPixels reference page for a
       description of the acceptable values for type parameter.

NOTES
       gluBuild2DMipmapLevels is only available if the GLU version  is  1.3  or
       greater.

       Formats   GL_BGR,   and   GL_BGRA,   and  types  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  are  only available if the GL version is
       1.2 or greater.

ERRORS
       GLU_INVALID_VALUE is returned if level > base, base < 0, max <  base  or
       max is > the highest mipmap level for data.

       GLU_INVALID_VALUE is returned if width or height is < 1.

       GLU_INVALID_ENUM  is  returned if internalFormat, format, or type is not
       legal.

       GLU_INVALID_OPERATION is returned if type is  GL_UNSIGNED_BYTE_3_3_2  or
       GL_UNSIGNED_BYTE_2_3_3_REV and format is not GL_RGB.

       GLU_INVALID_OPERATION  is returned if type is GL_UNSIGNED_SHORT_5_6_5 or
       GL_UNSIGNED_SHORT_5_6_5_REV and format is not GL_RGB.
       GL_BGRA.

SEE ALSO
       glDrawPixels,       glTexImage1D,       glTexImage2D,      glTexImage3D,
       gluBuild1DMipmaps, gluBuild2DMipmaps, gluBuild3DMipmaps, gluErrorString,
       glGetTexImage,      glGetTexLevelParameter,      gluBuild1DMipmapLevels,
       gluBuild3DMipmapLevels

                                                     GLUBUILD2DMIPMAPLEVELS(3G)

Man(1) output converted with man2html