Revision as of 21:24, 28 April 2012 by AlfonsesCategoryBot (talk | contribs) (Bot: Adding better formatting.)

Jump to: navigation, search
Core in version 4.5
Core since version 1.0

glReadBuffer: select a color buffer source for pixels

Function Definition

 void glReadBuffer(GLenum mode​);
Specifies a color buffer. Accepted values are GL_FRONT_LEFT​, GL_FRONT_RIGHT​, GL_BACK_LEFT​, GL_BACK_RIGHT​, GL_FRONT​, GL_BACK​, GL_LEFT​, GL_RIGHT​, and the constants GL_COLOR_ATTACHMENTi.


glReadBuffer specifies a color buffer as the source for subsequent glReadPixels, glCopyTexImage1D, glCopyTexImage2D, glCopyTexSubImage1D, glCopyTexSubImage2D, and glCopyTexSubImage3D commands. mode​ accepts one of twelve or more predefined values. In a fully configured system, GL_FRONT​, GL_LEFT​, and GL_FRONT_LEFT​ all name the front left buffer, GL_FRONT_RIGHT​ and GL_RIGHT​ name the front right buffer, and GL_BACK_LEFT​ and GL_BACK​ name the back left buffer. Further more, the constants GL_COLOR_ATTACHMENTi may be used to indicate the ith color attachment where i ranges from zero to the value of GL_MAX_COLOR_ATTACHMENTS​ minus one.

Nonstereo double-buffered configurations have only a front left and a back left buffer. Single-buffered configurations have a front left and a front right buffer if stereo, and only a front left buffer if nonstereo. It is an error to specify a nonexistent buffer to glReadBuffer.

mode​ is initially GL_FRONT​ in single-buffered configurations and GL_BACK​ in double-buffered configurations.


GL_INVALID_ENUM​ is generated if mode​ is not one of the twelve (or more) accepted values.

GL_INVALID_OPERATION​ is generated if mode​ specifies a buffer that does not exist.

Associated Gets

glGet with argument GL_READ_BUFFER​

See Also

glCopyTexImage1D, glCopyTexImage2D, glCopyTexSubImage1D, glCopyTexSubImage2D, glCopyTexSubImage3D, glDrawBuffer, glReadPixels


Copyright © 1991-2006 Silicon Graphics, Inc. Copyright © 2011 Khronos Group. This document is licensed under the SGI Free Software B License. For details, see