PARAMETERS
targe Must be GL_CONVOLUTION_2D.
_param2
The internal format of the convolution filter kernel. The allow‐
able 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 kernel
from an array of pixels.
The pixel array specified by _param3, _param4, _param5, _param6, and
_param7 is extracted from memory and processed just as if glDrawPixels
were called, but processing stops after the final expansion to RGBA is
completed.
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. Kernel
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 corresponding 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 val‐
ues.
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.
GL_INVALID_ENUM is generated if _param5 is not one of the allowable val‐
ues.
GL_INVALID_ENUM is generated if _param6 is not one of the allowable val‐
ues.
_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