OES_draw_buffers_indexed: colorMaskiOES() method
The colorMaskiOES() method of the OES_draw_buffers_indexed WebGL extension sets which color components to enable or to disable when drawing or rendering for a particular draw buffer. It's the indexed version of WebGL 1's WebGLRenderingContext.colorMask() method.
Syntax
js
colorMaskiOES(buf, r, g, b, a)
Parameters
buf-
An integer
ispecifying the draw buffer associated with the constantgl.DRAW_BUFFERi, see WebGL draw buffer constants. r-
A
GLbooleanspecifying whether or not the red color component should be written into the draw buffer. g-
A
GLbooleanspecifying whether or not the green color component should be written into the draw buffer. b-
A
GLbooleanspecifying whether or not the blue color component should be written into the draw buffer. a-
A
GLbooleanspecifying whether or not the red alpha (transparency) component should be written into the draw buffer.
Return value
None (undefined).
Exceptions
- If
buf,r,b,g, oraare not a valid values, agl.INVALID_VALUEerror is thrown.
Examples
Setting and getting color masks
You can set the color masks for the gl.DRAW_BUFFER0 and gl.DRAW_BUFFER1 draw buffers like this:
js
const ext = gl.getExtension("OES_draw_buffers_indexed");
ext.colorMaskiOES(0, 1, 0, 0, 0);
ext.colorMaskiOES(1, 0, 1, 0, 0);
To get the color masks for the gl.DRAW_BUFFER0 and gl.DRAW_BUFFER1 draw buffers, query the COLOR_WRITEMASK constant using WebGL2RenderingContext.getIndexedParameter():
js
gl.getIndexedParameter(gl.COLOR_WRITEMASK, 0);
gl.getIndexedParameter(gl.COLOR_WRITEMASK, 1);
Specifications
| Specification |
|---|
| WebGL OES_draw_buffers_indexed Extension Specification |
Browser compatibility
BCD tables only load in the browser