Light | Dark

# docs.GL

OpenGL 4
OpenGL 3
OpenGL 2
OpenGL ES 3
OpenGL ES 2

# glBlendEquation

## 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 https://web.archive.org/web/20171022161616/http://oss.sgi.com/projects/FreeB/.

Think you can improve this page? Edit this page on GitHub.