缓冲区函数
若要将屏幕外缓冲区的内容复制到屏幕缓冲区,请调用 SwapBuffers。 SwapBuffers 函数采用设备上下文的句柄。 指定设备上下文的当前像素格式必须包含后台缓冲区。 默认情况下,后台缓冲区位于屏幕外,前缓冲区位于屏幕上。
注意
SwapBuffers 函数不会真正交换两个缓冲区的内容,而是将一个缓冲区的内容复制到另一个缓冲区。 调用 SwapBuffers 后,屏幕外缓冲区的内容未定义。 因此,对 SwapBuffers 的两次连续调用的结果是未定义的。
下图显示了调用 SwapBuffers 时如何复制缓冲区的内容。
多个 OpenGL 核心函数还管理缓冲区。 glDrawBuffer 函数是与双重缓冲最相关的函数;它指定 OpenGL 绘制到的帧缓冲区或缓冲区。
以下函数还影响缓冲区:
- glReadBuffer
- glReadPixels
- glCopyPixels
- glAccum
- glColorMask
- glDepthMask
- glIndexMask
- glStencilMask
- glClearAccum
- glClearColor
- glClearDepth
- glClearIndex
- glClearStencil