WebGLRenderingContext.depthFunc()

WebGL API 的 WebGLRenderingContext.depthFunc() 方法,指定将输入像素深度与当前深度缓冲区值进行比较的函数。

语法

void gl.depthFunc(func);

参数

func
是一个指定深度比较函数的 GLenum,它设置像素将被绘制的条件。默认值是 gl.LESS。可能的值是:
  • gl.NEVER(永不通过)
  • gl.LESS(如果传入值小于深度缓冲值,则通过)
  • gl.EQUAL(如果传入值等于深度缓冲区值,则通过)
  • gl.LEQUAL(如果传入值小于或等于深度缓冲区值,则通过)
  • gl.GREATER(如果传入值大于深度缓冲区值,则通过)
  • gl.NOTEQUAL(如果传入的值不等于深度缓冲区值,则通过)
  • gl.GEQUAL(如果传入值大于或等于深度缓冲区值,则通过)
  • gl.ALWAYS(总是通过)

返回值

无。

示例

深度测试默认是禁用的。 要启用或禁用深度测试,请使用带有参数  gl.DEPTH_TEST 的 enable()disable() 方法。

gl.enable(gl.DEPTH_TEST);
gl.depthFunc(gl.NEVER);

要检查当前深度函数,请查询 DEPTH_FUNC 常量。

gl.getParameter(gl.DEPTH_FUNC) === gl.NEVER;
// true

规范

规范 状态 注释
WebGL 1.0
depthFunc
Recommendation 初始定义
OpenGL ES 2.0
glDepthFunc
Standard OpenGL API 手册

浏览器兼容性

Update compatibility data on GitHub
DesktopMobile
ChromeEdgeFirefoxInternet ExplorerOperaSafariAndroid webviewChrome for AndroidEdge MobileFirefox for AndroidOpera for AndroidSafari on iOSSamsung Internet
Basic supportChrome Full support 9Edge Full support 12Firefox Full support 4IE Full support 11Opera Full support 12Safari Full support 5.1WebView Android Full support YesChrome Android Full support 25Edge Mobile Full support YesFirefox Android Full support YesOpera Android Full support 12Safari iOS Full support 8.1Samsung Internet Android Full support Yes

Legend

Full support  
Full support

另请参阅

文档标签和贡献者

此页面的贡献者: dondevi
最后编辑者: dondevi,