The WebGLRenderingContext.stencilFunc()
method of the WebGL API sets the front and back function and reference value for stencil testing.
Stenciling enables and disables drawing on a per-pixel basis. It is typically used in multipass rendering to achieve special effects.
stencilFunc(func, ref, mask)
The stencil testing is disabled by default. To enable or disable stencil testing, use the enable()
and disable()
methods with the argument gl.STENCIL_TEST
.
gl.enable(gl.STENCIL_TEST);
gl.stencilFunc(gl.LESS, 0, 0b1110011);
To get the current stencil function, reference value, or other stencil information, query the following constants with getParameter()
.
gl.getParameter(gl.STENCIL_FUNC);
gl.getParameter(gl.STENCIL_VALUE_MASK);
gl.getParameter(gl.STENCIL_REF);
gl.getParameter(gl.STENCIL_BACK_FUNC);
gl.getParameter(gl.STENCIL_BACK_VALUE_MASK);
gl.getParameter(gl.STENCIL_BACK_REF);
gl.getParameter(gl.STENCIL_BITS);