OES_draw_buffers_indexed: blendEquationiOES() method
The blendEquationiOES() method of the OES_draw_buffers_indexed WebGL extension sets both the RGB blend and alpha blend equations for a particular draw buffer.
See OES_draw_buffers_indexed.blendEquationSeparateiOES() for setting RGB and alpha separately and WebGLRenderingContext.blendEquation() for the WebGL 1 version of this method.
Syntax
js
blendEquationiOES(buf, mode)
Parameters
buf-
An integer
ispecifying the draw buffer associated with the constantgl.DRAW_BUFFERi, see WebGL draw buffer constants. mode-
A
GLenumspecifying how source and destination colors are combined. Accepts the same enums as themodeparameter inWebGLRenderingContext.blendEquation().
Return value
None (undefined).
Exceptions
- If
bufis not a valid value, agl.INVALID_VALUEerror is thrown. - If
modeis not one of the possible values, agl.INVALID_ENUMerror is thrown.
Examples
Setting and getting blend equations
You can set the blend equations for the gl.DRAW_BUFFER0 and gl.DRAW_BUFFER1 draw buffers like this:
js
const ext = gl.getExtension("OES_draw_buffers_indexed");
ext.blendEquationiOES(0, gl.FUNC_ADD);
ext.blendEquationiOES(1, gl.FUNC_SUBTRACT);
To get the blend equations for the gl.DRAW_BUFFER0 and gl.DRAW_BUFFER1 draw buffers, query the BLEND_EQUATION_RGB and BLEND_EQUATION_ALPHA constants using WebGL2RenderingContext.getIndexedParameter():
js
// For gl.DRAW_BUFFER0
gl.getIndexedParameter(gl.BLEND_EQUATION_RGB, 0);
gl.getIndexedParameter(gl.BLEND_EQUATION_ALPHA, 0);
// For gl.DRAW_BUFFER0
gl.getIndexedParameter(gl.BLEND_EQUATION_RGB, 1);
gl.getIndexedParameter(gl.BLEND_EQUATION_ALPHA, 1);
Specifications
| Specification |
|---|
| WebGL OES_draw_buffers_indexed Extension Specification |
Browser compatibility
BCD tables only load in the browser