glClear

From OpenGL Reference
Jump to navigation Jump to search

Clear buffers to preset values.

C Specification[edit]

void glClear( GLbitfield mask );


Parameters[edit]

mask - Bitwise OR of masks that indicate the buffers to be cleared. The three masks are GL_COLOR_BUFFER_BIT , GL_DEPTH_BUFFER_BIT , and GL_STENCIL_BUFFER_BIT .


Description[edit]

 glClear sets the bitplane area of the window to values previously selected by glClearColor , glClearDepth , and glClearStencil . Multiple color buffers can be cleared simultaneously by selecting more than one buffer at a time using glDrawBuffer .

The pixel ownership test, the scissor test, dithering, and the buffer writemasks affect the operation of glClear . The scissor box bounds the cleared region. Alpha function, blend function, logical operation, stenciling, texture mapping, and depth-buffering are ignored by glClear .

 glClear takes a single argument that is the bitwise OR of several values indicating which buffer is to be cleared.

The values are as follows:


GL_COLOR_BUFFER_BIT  - Indicates the buffers currently enabled for color writing.
GL_DEPTH_BUFFER_BIT  - Indicates the depth buffer.
GL_STENCIL_BUFFER_BIT  - Indicates the stencil buffer.

The value to which each buffer is cleared depends on the setting of the clear value for that buffer.


Notes[edit]

If a buffer is not present, then a glClear directed at that buffer has no effect.


Errors[edit]

 GL_INVALID_VALUE is generated if any bit other than the three defined bits is set in mask .


Associated Gets[edit]

 glGet with argument GL_DEPTH_CLEAR_VALUE 

 glGet with argument GL_COLOR_CLEAR_VALUE 

 glGet with argument GL_STENCIL_CLEAR_VALUE 


Version Support[edit]

 glClear  2.0+

See Also[edit]

 glClearColor , glClearDepth , glClearStencil , glColorMask , glDepthMask , glDrawBuffer , glScissor , glStencilMask 


Copyright[edit]

Copyright© 1991-2006 Silicon Graphics, Inc. Copyright© 2010-2014 Khronos Group. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.