WebGLRenderingContext: stencilMask() 方法

Baseline 已广泛支持

此特性已相当成熟,可在许多设备和浏览器版本上使用。自 ⁨2015 年 7 月⁩以来,各浏览器均已提供此特性。

注意:此功能在 Web Workers 中可用。

WebGLRenderingContext.stencilMask() 方法是 WebGL API 的一部分,用于控制模板缓冲区(stencil planes)中各个位写入的启用和禁用,包括正面和背面。

可以使用 WebGLRenderingContext.stencilMaskSeparate() 方法为正面和背面模板写入掩码设置不同的值。

语法

js
stencilMask(mask)

参数

mask

一个 GLuint 值,用于指定一个位掩码,以启用或禁用模板缓冲区中各个位的写入。默认情况下,掩码是全 1。

返回值

无(undefined)。

示例

js
gl.stencilMask(110101);

要获取当前的模板写入掩码,可以查询 STENCIL_WRITEMASKSTENCIL_BACK_WRITEMASKSTENCIL_BITS 常量。

js
gl.getParameter(gl.STENCIL_WRITEMASK);
// 110101
gl.getParameter(gl.STENCIL_BACK_WRITEMASK);
// 110101
gl.getParameter(gl.STENCIL_BITS);
// 0

规范

规范
WebGL 规范
# 5.14.3

浏览器兼容性

另见