This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Note: This feature is available in Web Workers.
The WebGLRenderingContext.stencilMaskSeparate() method of the WebGL API controls enabling and disabling of front and/or back writing of individual bits in the stencil planes.
The WebGLRenderingContext.stencilMask() method can set both, the front and back stencil writemasks to one value at the same time.
stencilMaskSeparate(face, mask)
faceA GLenum specifying whether the front and/or back stencil writemask is updated. The possible values are:
gl.FRONTgl.BACKgl.FRONT_AND_BACKmaskA GLuint specifying a bit mask to enable or disable writing of individual bits in the stencil planes. By default, the mask is all 1.
None (undefined).
gl.stencilMaskSeparate(gl.FRONT, 110101);
To get the current stencil masks, query the STENCIL_WRITEMASK, STENCIL_BACK_WRITEMASK, or STENCIL_BITS constants.
gl.getParameter(gl.STENCIL_WRITEMASK); // 110101 gl.getParameter(gl.STENCIL_BACK_WRITEMASK); // 110101 gl.getParameter(gl.STENCIL_BITS); // 0
| Specification |
|---|
| WebGL Specification> # 5.14.3> |
| Desktop | Mobile | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox for Android | Opera Android | Safari on IOS | Samsung Internet | WebView Android | WebView on iOS | |
stencilMaskSeparate |
9 | 12 | 4 | 12 | 5.1 | 25 | 4 | 12 | 8 | 1.5 | 4.4.3 | 8 |
WebGLRenderingContext.colorMask()WebGLRenderingContext.depthMask()WebGLRenderingContext.stencilMask()
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/WebGLRenderingContext/stencilMaskSeparate