--- title: WebGLRenderingContext.clear() slug: Web/API/WebGLRenderingContext/clear translation_of: Web/API/WebGLRenderingContext/clear ---
WebGL API 的 WebGLRenderingContext.clear() 方法使用预设值来清空缓冲。
预设值可以使用 {{domxref("WebGLRenderingContext.clearColor", "clearColor()")}} 、 {{domxref("WebGLRenderingContext.clearDepth", "clearDepth()")}} 或 {{domxref("WebGLRenderingContext.clearStencil", "clearStencil()")}} 设置。
裁剪、抖动处理和缓冲写入遮罩会影响 clear() 方法。
void gl.clear(mask);
maskgl.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 |
|---|---|---|
| {{SpecName('WebGL', "#5.14.11", "clear")}} | {{Spec2('WebGL')}} | Initial definition. |
| {{SpecName('OpenGL ES 2.0', "glClear.xml", "glClear")}} | {{Spec2('OpenGL ES 2.0')}} | Man page of the OpenGL API. |
{{Compat("api/WebGLRenderingContext", "WebGLRenderingContext.clear")}}