WebGLRenderingContext: polygonOffset() 方法

Baseline 已广泛支持

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

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

WebGLRenderingContext.polygonOffset() 方法是 WebGL API 的一部分,用于指定用于计算深度值的比例因子和单位。

偏移量在执行深度测试之前以及在值写入深度缓冲区之前添加。

语法

js
polygonOffset(factor, units)

参数

factor

一个 GLfloat,用于设置每个多边形可变深度偏移的比例因子。默认值为 0。

units

一个 GLfloat,用于设置一个乘数,该乘数与特定于实现的**值**相乘,以创建恒定的深度偏移。默认值为 0。

返回值

无(undefined)。

示例

默认情况下,多边形偏移填充是禁用的。要启用或禁用多边形偏移填充,请使用 enable()disable() 方法,并将参数设置为 gl.POLYGON_OFFSET_FILL

js
gl.enable(gl.POLYGON_OFFSET_FILL);
gl.polygonOffset(2, 3);

要检查当前的 polygon offset 因子或单位,请查询 POLYGON_OFFSET_FACTORPOLYGON_OFFSET_UNITS 常量。

js
gl.getParameter(gl.POLYGON_OFFSET_FACTOR); // 2
gl.getParameter(gl.POLYGON_OFFSET_UNITS); // 3

规范

规范
WebGL 规范
# 5.14.3

浏览器兼容性

另见