OES_draw_buffers_indexed: blendEquationSeparateiOES() method
The blendEquationSeparateiOES()
method of the OES_draw_buffers_indexed
WebGL extension sets the RGB and alpha blend equations separately for a particular draw buffer.
See OES_draw_buffers_indexed.blendEquationiOES()
for setting RGB and alpha together and WebGLRenderingContext.blendEquationSeparate()
for the WebGL 1 version of this method.
Syntax
blendEquationSeparateiOES(buf, modeRGB, modeAlpha)
Parameters
-
buf
-
An integer i
specifying the draw buffer associated with the constant gl.DRAW_BUFFERi
, see WebGL draw buffer constants.
-
modeRGB
-
A GLenum
specifying how source and destination RGB color components are combined. Accepts the same enums as the modeRGB
parameter in WebGLRenderingContext.blendEquationSeparate()
.
-
modeAlpha
-
A GLenum
specifying how source and destination alpha color components are combined. Accepts the same enums as the modeAlpha
parameter in WebGLRenderingContext.blendEquationSeparate()
.
Return value
Exceptions
- If
buf
is not a valid value, a gl.INVALID_VALUE
error is thrown.
- If
modeRGB
or modeAlpha
are not set to one of the possible values, a gl.INVALID_ENUM
error is thrown.
Examples
Setting and getting blend equations
The following sets the blend equations for the draw buffers gl.DRAW_BUFFER0
(call where buf
is 0) and gl.DRAW_BUFFER1
(call where buf
is 1).
const ext = gl.getExtension("OES_draw_buffers_indexed");
ext.blendEquationSeparateiOES(0, gl.FUNC_ADD, gl.FUNC_SUBTRACT);
ext.blendEquationSeparateiOES(1, gl.FUNC_ADD, gl.FUNC_SUBTRACT);
To get the blend equations for gl.DRAW_BUFFER0
and gl.DRAW_BUFFER1
, query the BLEND_EQUATION_RGB
and BLEND_EQUATION_ALPHA
constants using WebGL2RenderingContext.getIndexedParameter()
:
gl.getIndexedParameter(gl.BLEND_EQUATION_RGB, 0);
gl.getIndexedParameter(gl.BLEND_EQUATION_ALPHA, 0);
gl.getIndexedParameter(gl.BLEND_EQUATION_RGB, 1);
gl.getIndexedParameter(gl.BLEND_EQUATION_ALPHA, 1);
Specifications
Browser compatibility
|
Desktop |
Mobile |
|
Chrome |
Edge |
Firefox |
Internet Explorer |
Opera |
Safari |
WebView Android |
Chrome Android |
Firefox for Android |
Opera Android |
Safari on IOS |
Samsung Internet |
blendEquationSeparateiOES |
100 |
100 |
108 |
No |
86 |
16 |
100 |
100 |
108 |
69 |
16 |
19.0 |
See also