GLBLENDEQUATION(3G) [FIXME: manual] GLBLENDEQUATION(3G)

glBlendEquation - specify the equation used for both the RGB blend equation and the Alpha blend equation

void glBlendEquation(GLenum mode);

void glBlendEquationi(GLuint buf, GLenum mode);

buf

for glBlendEquationi, specifies the index of the draw buffer for which to set the blend equation.

mode

specifies how source and destination colors are combined. It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX.

The blend equations determine how a new pixel (the ''source'' color) is combined with a pixel already in the framebuffer (the ''destination'' color). This function sets both the RGB blend equation and the alpha blend equation to a single equation. glBlendEquationi specifies the blend equation for a single draw buffer whereas glBlendEquation sets the blend equation for all draw buffers.

These equations use the source and destination blend factors specified by either glBlendFunc() or glBlendFuncSeparate(). See glBlendFunc() or glBlendFuncSeparate() for a description of the various blend factors.

In the equations that follow, source and destination color components are referred to as R s G s B s A s and R d G d B d A d, respectively. The result color is referred to as R r G r B r A r. The source and destination blend factors are denoted s R s G s B s A and d R d G d B d A, respectively. For these equations all color components are understood to have values in the range 0 1.

Mode RGB Components Alpha Component
GL_FUNC_ADD Rr = R s ⁢ s R + R d ⁢ d R Gr = G s ⁢ s G + G d ⁢ d G Br = B s ⁢ s B + B d ⁢ d B Ar = A s ⁢ s A + A d ⁢ d A
GL_FUNC_SUBTRACT Rr = R s ⁢ s R - R d ⁢ d R Gr = G s ⁢ s G - G d ⁢ d G Br = B s ⁢ s B - B d ⁢ d B Ar = A s ⁢ s A - A d ⁢ d A
GL_FUNC_REVERSE_SUBTRACT Rr = R d ⁢ d R - R s ⁢ s R Gr = G d ⁢ d G - G s ⁢ s G Br = B d ⁢ d B - B s ⁢ s B Ar = A d ⁢ d A - A s ⁢ s A
GL_MIN Rr = min ⁡ R s R d Gr = min ⁡ G s G d Br = min ⁡ B s B d Ar = min ⁡ A s A d
GL_MAX Rr = max ⁡ R s R d Gr = max ⁡ G s G d Br = max ⁡ B s B d Ar = max ⁡ A s A d

The results of these equations are clamped to the range 0 1.

The GL_MIN and GL_MAX equations are useful for applications that analyze image data (image thresholding against a constant color, for example). The GL_FUNC_ADD equation is useful for antialiasing and transparency, among other things.

Initially, both the RGB blend equation and the alpha blend equation are set to GL_FUNC_ADD.

The GL_MIN, and GL_MAX equations do not use the source or destination factors, only the source and destination colors.

GL_INVALID_ENUM is generated if mode is not one of GL_FUNC_ADD, GL_FUNC_SUBTRACT, GL_FUNC_REVERSE_SUBTRACT, GL_MAX, or GL_MIN.

GL_INVALID_VALUE is generated by glBlendEquationi if buf is greater than or equal to the value of GL_MAX_DRAW_BUFFERS.

glGet() with an argument of GL_BLEND_EQUATION_RGB

glGet() with an argument of GL_BLEND_EQUATION_ALPHA

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
glBlendEquation
glBlendEquationi - - - - - -

glBlendColor(), glBlendFunc() glBlendFuncSeparate()

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.

Copyright © 1991-2006 Silicon Graphics, Inc.
Copyright © 2010-2014 Khronos Group

10/20/2024 [FIXME: source]