C SPECIFICATION

       void GLAPIENTRY glConvolutionFilter2D( GLenum targe )



PARAMETERS

       targe  Must be GL_CONVOLUTION_2D.

       _param2
              The  internal  format  of  the  convolution  filter kernel.  The
              allowable values are 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_R3_G3_B2,   GL_RGB,   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.

       _param3
              The width of the pixel array referenced by _param7.

       _param4
              The height of the pixel array referenced by _param7.

       _param5
              The  format  of the pixel data in _param7.  The allowable values
              are  GL_RED,  GL_GREEN,  GL_BLUE,  GL_ALPHA,   GL_RGB,   GL_BGR,
              GL_RGBA, GL_BGRA, GL_LUMINANCE, and GL_LUMINANCE_ALPHA.

       _param6
              The  type  of  the  pixel  data  in _param7.  Symbolic constants
              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,  and  GL_UNSIGNED_INT_2_10_10_10_REV
              are accepted.

       _param7
              Pointer to a two-dimensional array of pixel data  that  is  pro-
              cessed to build the convolution filter kernel.


DESCRIPTION

       glConvolutionFilter2D  builds a two-dimensional convolution filter ker-
       nel from an array of pixels.


       Each  pixel  is  then  converted  to  the  internal format specified by
       _param2.  This conversion simply maps the component values of the pixel
       (R,  G,  B,  and A) to the values included in the internal format (red,
       green, blue, alpha, luminance, and intensity).  The mapping is as  fol-
       lows:


       ------------------------------------------------------------------------
       Internal Format      Red   Green   Blue   Alpha   Luminance   Intensity
       ------------------------------------------------------------------------
       GL_ALPHA                                    A
       GL_LUMINANCE                                R
       GL_LUMINANCE_ALPHA                  A       R
       GL_INTENSITY                                                      R
       GL_RGB                R      G      B
       GL_RGBA               R      G      B       A
       ------------------------------------------------------------------------

       The  red, green, blue, alpha, luminance, and/or intensity components of
       the resulting pixels are stored in floating-point rather  than  integer
       format.   They  form a two-dimensional filter kernel image indexed with
       coordinates i and j such that i starts at zero and increases from  left
       to  right, and j starts at zero and increases from bottom to top.  Ker-
       nel location i,j is derived from the Nth pixel, where N is i+j*_param3.

       Note  that after a convolution is performed, the resulting color compo-
       nents     are     also     scaled      by      their      corresponding
       GL_POST_CONVOLUTION_c_SCALE  parameters and biased by their correspond-
       ing GL_POST_CONVOLUTION_c_BIAS parameters (where c takes on the  values
       RED,   GREEN,   BLUE,   and   ALPHA).   These  parameters  are  set  by
       glPixelTransfer.


NOTES

       glConvolutionFilter2D is present only  if  GL_ARB_imaging  is  returned
       when glGetString is called with an argument of GL_EXTENSIONS.


ERRORS

       GL_INVALID_ENUM is generated if targe is not GL_CONVOLUTION_2D.

       GL_INVALID_ENUM  is  generated  if  _param2 is not one of the allowable
       values.

       GL_INVALID_VALUE is generated if _param3 is less than zero  or  greater
       than  the  maximum  supported  value.   This  value may be queried with
       glGetConvolutionParameter  using  target  GL_CONVOLUTION_2D  and   name
       GL_MAX_CONVOLUTION_WIDTH.

       GL_INVALID_VALUE  is  generated if _param4 is less than zero or greater
       than the maximum supported value.   This  value  may  be  queried  with
       glGetConvolutionParameter   using  target  GL_CONVOLUTION_2D  and  name
       GL_MAX_CONVOLUTION_HEIGHT.
       not GL_RGB.

       GL_INVALID_OPERATION    is    generated    if   _param4   is   one   of
       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   and
       _param5 is neither GL_RGBA nor GL_BGRA.


ASSOCIATED GETS

       glGetConvolutionParameter, glGetConvolutionFilter


SEE ALSO

       glConvolutionFilter1D,   glSeparableFilter2D,   glConvolutionParameter,
       glPixelTransfer



                                                     GLCONVOLUTIONFILTER2D(3G)

Man(1) output converted with man2html