Name

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

C Specification

void glBlendEquation(GLenum mode);
 

Parameters

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.

Description

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 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.

Notes

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

Errors

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 executed between the execution of glBegin and the corresponding execution of glEnd.

Associated Gets

glGet with an argument of GL_BLEND_EQUATION_RGB

glGet with an argument of GL_BLEND_EQUATION_ALPHA

See Also

glGetString, glBlendColor, glBlendFunc glBlendFuncSeparate

Copyright

Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.