GLBLENDEQUATION(3G) UNIX Programmer's Manual GLBLENDEQUATION(3G)
glBlendEquation - set the blend equation
void glBlendEquation( GLenum mode )
mode specifies how source and destination colors are com-
bined. It must be GL_FUNC_ADD, GL_FUNC_SUBTRACT,
GL_FUNC_REVERSE_SUBTRACT, GL_MIN, GL_MAX.
The blend equation determines how a new pixel (the
``source'' color) is combined with a pixel already in the
framebuffer (the ``destination'' color).
GL_MIN
sets the blend equation so that each component of the
result color is the minimum of the corresponding com-
ponents of the source and destination colors.
GL_MAX
sets the blend equation so that each component of the
result color is the maximum of the corresponding com-
ponents of the source and destination colors.
The remaining blend equations use the source and destination
blend factors specified by glBlendFunc. See glBlendFunc for
a description of the various blend factors.
In the equations that follow, source and destination color
components are referred to as (Rs,Gs,Bs,As) and
(Rd,Gd,Bd,Ad), respectively. The result color is referred to
as (Rr,Gr,Br,Ar). The source and destination blend factors
are denoted (sR,sG,sB,sA) and (dR,dG,dB,dA), respectively.
For these equations all color components are understood to
have values in the range [0, 1].
GL_FUNC_ADD
sets the blend equation so that the source and destina-
tion data are added. Each component of the source color
is multiplied by the corresponding source factor, then
each component of the destination color is multiplied
by the corresponding destination factor. The result is
the componentwise sum of the two products, clamped to
the range [0, 1].
Rr = min(1, Rs sR + Rd dR)
Gr = min(1, Gs sG + Gd dG)
MirOS BSD #10-current Printed 20.2.2012 1
GLBLENDEQUATION(3G) UNIX Programmer's Manual GLBLENDEQUATION(3G)
Br = min(1, Bs sB + Bd dB)
Ar = min(1, As sA + Ad dA)
GL_FUNC_SUBTRACT
Is like GL_FUNC_ADD except the product of the destina-
tion factor and the destination color is componentwise
subtracted from the product of the source factor and
the source color. The result is clamped to the range
[0, 1].
Rr = max(0, Rs sR - Rd dR)
Gr = max(0, Gs sG - Gd dG)
Br = max(0, Bs sB - Bd dB)
Ar = max(0, As sA - Ad dA)
GL_FUNC_REVERSE_SUBTRACT
Is like GL_FUNC_ADD except the product of the source
factor and the source color is componentwise subtracted
from the product of the destination factor and the des-
tination color. The result is clamped to the range
[0, 1].
Rr = max(0, Rd dR - Rs sR)
Gr = max(0, Gd dG - Gs sG)
Br = max(0, Bd dB - Bs sB)
Ar = max(0, Ad dA - As sA)
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 antialias-
ing and transparency, among other things.
Initially, the blend equation is set to GL_FUNC_ADD.
glBlendEquation is part of the GL_ARB_imaging subset.
glBlendEquation is present only if GL_ARB_imaging is
returned when glGetString is called with GL_EXTENSIONS as
its argument.
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_OPERATION is generated if glBlendEquation is exe-
cuted between the execution of glBegin and the corresponding
execution of glEnd.
MirOS BSD #10-current Printed 20.2.2012 2
GLBLENDEQUATION(3G) UNIX Programmer's Manual GLBLENDEQUATION(3G)
glGet with an argument of GL_BLEND_EQUATION
glGetString(3G), glBlendColor(3G), glBlendFunc(3G)
MirOS BSD #10-current Printed 20.2.2012 3
Generated on 2012-02-20 02:47:02 by $MirOS: src/scripts/roff2htm,v 1.70 2011/12/03 18:21:12 tg Exp $
These manual pages and other documentation are copyrighted by their respective writers;
their source is available at our CVSweb,
AnonCVS, and other mirrors. The rest is Copyright © 2002‒2011 The MirOS Project, Germany.
This product includes material
provided by Thorsten Glaser.
This manual page’s HTML representation is supposed to be valid XHTML/1.1; if not, please send a bug report – diffs preferred.