glBlendEquation — specify the equation used for both the RGB blend equation and the Alpha blend equation
void glBlendEquation(
GLenum mode)
;
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.
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 and , respectively. The result color is referred to as . The source and destination blend factors are denoted and , respectively. For these equations all color components are understood to have values in the range .
Mode | RGB Components | Alpha Component |
---|---|---|
GL_FUNC_ADD | ||
GL_FUNC_SUBTRACT | ||
GL_FUNC_REVERSE_SUBTRACT | ||
GL_MIN | ||
GL_MAX |
The results of these equations are clamped to the range .
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
.
glGet with an argument of GL_BLEND_EQUATION_RGB
glGet with an argument of GL_BLEND_EQUATION_ALPHA
Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/.