glClear 函数

glClear 函数清除缓冲区以预设值。

语法

void WINAPI glClear(
   GLbitfield mask
);

参数

mask

掩码的按位 OR 运算符,指示要清除的缓冲区。 这四个掩码如下所示。

含义
GL_COLOR_BUFFER_BIT
当前为颜色写入启用的缓冲区。
GL_DEPTH_BUFFER_BIT
深度缓冲区。
GL_ACCUM_BUFFER_BIT
累积缓冲区。
GL_STENCIL_BUFFER_BIT
模具缓冲区。

返回值

此函数不返回值。

错误代码

glGetError 函数可以检索以下错误代码。

名称 含义
GL_INVALID_VALUE
除四个定义的位以外的任何位已在 掩码中设置。
GL_INVALID_OPERATION
在对 glBegin 的调用和对 glEnd 的相应调用之间调用了函数。

备注

glClear 函数将窗口的位平面区域设置为以前由 glClearColor、glClearIndexglClearDepthglClearStencilglClearAccum 选择的值。 通过使用 glDrawBuffer 一次选择多个缓冲区,可以同时清除多个颜色缓冲区。

像素所有权测试、剪刀测试、抖动和缓冲区写掩码会影响 glClear 的操作。 剪刀框绑定清除的区域。 glClear 函数忽略 alpha 函数、混合函数、逻辑运算、压缩、纹理映射和 z 缓冲。

glClear 函数采用单个参数 (掩码) ,该参数是多个值的按位 OR,指示要清除哪个缓冲区。

每个缓冲区要清除的值取决于该缓冲区的清除值设置。

如果缓冲区不存在,则指向该缓冲区的 glClear 调用不起作用。

以下函数检索与 glClear 相关的信息:

带参数GL_ACCUM_CLEAR_VALUE的 glGet

带参数GL_DEPTH_CLEAR_VALUE的 glGet

带参数GL_INDEX_CLEAR_VALUE的 glGet

带参数GL_COLOR_CLEAR_VALUE的 glGet

带参数GL_STENCIL_CLEAR_VALUE的 glGet

要求

要求
最低受支持的客户端
Windows 2000 Professional [仅限桌面应用]
最低受支持的服务器
Windows 2000 Server [仅限桌面应用]
标头
Gl.h

Opengl32.lib
DLL
Opengl32.dll

另请参阅

glClearAccum

glClearColor

glClearDepth

glClearIndex

glClearStencil

glDrawBuffer

glGet

glScissor