WebGLRenderingContext.polygonOffset()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

The WebGLRenderingContext.polygonOffset() method of the WebGL API specifies the scale factors and units to calculate depth values.

The offset is added before the depth test is performed and before the value is written into the depth buffer.

语法

void gl.polygonOffset(factor, units);

参数

factor

A GLfloat which sets the scale factor for the variable depth offset for each polygon. 默认值为 0.

units

A GLfloat which sets the multiplier by which an implementation-specific value is multiplied with to create a constant depth offset. 默认值为 0.

返回值

None.

例子

The polygon offset fill is disabled by default. To enable or disable polygon offset fill, use the enable() and disable() methods with the argument gl.POLYGON_OFFSET_FILL.

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

想要查看当前多边形偏移的 factor 或 units,查询 POLYGON_OFFSET_FACTORPOLYGON_OFFSET_UNITS 的内容即可。

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

规范

Specification
WebGL Specification
# 5.14.3

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobile
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
polygonOffset

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

See also