glDrawBuffer.3gl







Name

  glDrawBuffer - specify which color buffers are to be drawn into





C Specification

  void glDrawBuffer( GLenum mode )





Parameters



  mode	Specifies up to	four color buffers to be drawn into.  Symbolic

	constants GL_NONE, GL_FRONT_LEFT, GL_FRONT_RIGHT, GL_BACK_LEFT,

	GL_BACK_RIGHT, GL_FRONT, GL_BACK, GL_LEFT, GL_RIGHT,

	GL_FRONT_AND_BACK, and GL_AUXi,	where i	is between 0 and

	``GL_AUX_BUFFERS'' -1, are accepted (GL_AUX_BUFFERS is not the upper

	limit; use glGet to query the number of	available aux buffers.)	The

	default	value is GL_FRONT for single-buffered contexts,	and GL_BACK

	for double-buffered contexts.





Description

  When colors are written to the frame buffer, they are	written	into the

  color	buffers	specified by glDrawBuffer.  The	specifications are as

  follows:



  GL_NONE		   No color buffers are	written.



  GL_FRONT_LEFT		   Only	the front left color buffer is written.



  GL_FRONT_RIGHT	   Only	the front right	color buffer is	written.



  GL_BACK_LEFT		   Only	the back left color buffer is written.



  GL_BACK_RIGHT		   Only	the back right color buffer is written.



  GL_FRONT		   Only	the front left and front right color buffers

			   are written.	 If there is no	front right color

			   buffer, only	the front left color buffer is

			   written.



  GL_BACK		   Only	the back left and back right color buffers

			   are written.	 If there is no	back right color

			   buffer, only	the back left color buffer is

			   written.



  GL_LEFT		   Only	the front left and back	left color buffers

			   are written.	 If there is no	back left color

			   buffer, only	the front left color buffer is

			   written.



  GL_RIGHT		   Only	the front right	and back right color buffers

			   are written.	 If there is no	back right color

			   buffer, only	the front right	color buffer is

			   written.



  GL_FRONT_AND_BACK	   All the front and back color	buffers	(front left,

			   front right,	back left, back	right) are written.

			   If there are	no back	color buffers, only the	front

			   left	and front right	color buffers are written.

			   If there are	no right color buffers,	only the

			   front left and back left color buffers are

			   written.  If	there are no right or back color

			   buffers, only the front left	color buffer is

			   written.



  GL_AUXi		   Only	auxiliary color	buffer i is written.



  If more than one color buffer	is selected for	drawing, then blending or

  logical operations are computed and applied independently for	each color

  buffer and can produce different results in each buffer.



  Monoscopic contexts include only left	buffers, and stereoscopic contexts

  include both left and	right buffers.	Likewise, single-buffered contexts

  include only front buffers, and double-buffered contexts include both	front

  and back buffers.  The context is selected at	GL initialization.



Notes

  It is	always the case	that GL_AUXi = GL_AUX0 + i.



Errors

  GL_INVALID_ENUM is generated if mode is not an accepted value.



  GL_INVALID_OPERATION is generated if none of the buffers indicated by	mode

  exists.



  GL_INVALID_OPERATION is generated if glDrawBuffer is executed	between	the

  execution of glBegin and the corresponding execution of glEnd.



Associated Gets

  glGet	with argument GL_DRAW_BUFFER

  glGet	with argument GL_AUX_BUFFERS



See Also

  glBlendFunc, glColorMask, glIndexMask, glLogicOp, glReadBuffer








Introduction | Alphabetic | Specification

Last Edited: Mon, May 22, 1995

AFV