We're looking for a user researcher to understand the needs of developers and designers. Is this you or someone you know? Check out the post: https://mzl.la/2IGzdXS

WebGL API 的 WebGLRenderingContext.clear() 方法使用预设值来清空缓冲。

预设值可以使用 clearColor() 、 clearDepth()clearStencil() 设置。

裁剪、抖动处理和缓冲写入遮罩会影响 clear() 方法。

句法

void gl.clear(mask);

参数

mask
一个用于指定需要清除的缓冲区的 GLbitfield 。可能的值有:
  • gl.COLOR_BUFFER_BIT
  • gl.DEPTH_BUFFER_BIT
  • gl.STENCIL_BUFFER_BIT

错误抛出

如果mask不是以上列出的值,会抛出 gl.INVALID_ENUM 错误。

返回值

示例

clear() 方法可接受复合值,

gl.clear(gl.DEPTH_BUFFER_BIT);
gl.clear(gl.DEPTH_BUFFER_BIT | gl.COLOR_BUFFER_BIT);

要获得当前的清除值,传入 COLOR_CLEAR_VALUE,、DEPTH_CLEAR_VALUE或STENCIL_CLEAR_VALUE 常量。

gl.getParameter(gl.COLOR_CLEAR_VALUE);
gl.getParameter(gl.DEPTH_CLEAR_VALUE);
gl.getParameter(gl.STENCIL_CLEAR_VALUE);

规范

Specification Status Comment
WebGL 1.0
clear
Recommendation Initial definition.
OpenGL ES 2.0
glClear
Standard Man page of the OpenGL API.

浏览器兼容

No compatibility data found. Please contribute data for "api/WebGLRenderingContext" (depth: WebGLRenderingContext.clear) to the MDN compatibility data repository.

相关内容

文档标签和贡献者

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