files/en-us/web/api/webglrenderingcontext/blendequationseparate/index.md
{{APIRef("WebGL")}}{{AvailableInWorkers}}
The WebGLRenderingContext.blendEquationSeparate() method
of the WebGL API is used to set the RGB
blend equation and alpha blend equation separately.
The blend equation determines how a new pixel is combined with a pixel already in the {{domxref("WebGLFramebuffer")}}.
blendEquationSeparate(modeRGB, modeAlpha)
modeRGB
gl.FUNC_ADD: source + destination (default value),
gl.FUNC_SUBTRACT: source - destination,
gl.FUNC_REVERSE_SUBTRACT: destination - source,
When using the {{domxref("EXT_blend_minmax")}} extension:
ext.MIN_EXT: Minimum of source and destination,ext.MAX_EXT: Maximum of source and destination.When using a {{domxref("WebGL2RenderingContext", "WebGL 2 context", "", 1)}}, the following values are available additionally:
gl.MIN: Minimum of source and destination,gl.MAX: Maximum of source and destination.modeAlpha
gl.FUNC_ADD: source + destination (default value),
gl.FUNC_SUBTRACT: source - destination,
gl.FUNC_REVERSE_SUBTRACT: destination - source,
When using the {{domxref("EXT_blend_minmax")}} extension:
ext.MIN_EXT: Minimum of source and destination,ext.MAX_EXT: Maximum of source and destination.When using a {{domxref("WebGL2RenderingContext", "WebGL 2 context", "", 1)}}, the following values are available additionally:
gl.MIN: Minimum of source and destination,gl.MAX: Maximum of source and destination.None ({{jsxref("undefined")}}).
If mode is not one of the three possible values, a
gl.INVALID_ENUM error is thrown.
To set the blend equations, use:
gl.blendEquationSeparate(gl.FUNC_ADD, gl.FUNC_SUBTRACT);
To get the current blend equations, query the BLEND_EQUATION,
BLEND_EQUATION_RGB and BLEND_EQUATION_ALPHA constants which
return gl.FUNC_ADD, gl.FUNC_SUBTRACT,
gl.FUNC_REVERSE_SUBTRACT, or if the {{domxref("EXT_blend_minmax")}} is
enabled: ext.MIN_EXT or ext.MAX_EXT.
gl.getParameter(gl.BLEND_EQUATION_RGB) === gl.FUNC_ADD;
// true
gl.getParameter(gl.BLEND_EQUATION_ALPHA) === gl.FUNC_ADD;
// true
{{Specifications}}
{{Compat}}