glRenderMode  0IQ_J4

[New - Windows 95, OEM Service Release 2]

The glRenderMode function sets the rasterization mode.

GLint glRenderMode(

    GLenum mode

 

   );

 

 

Parameters

mode

The rasterization mode. The following three values are accepted. The default value is GL_RENDER.

GL_RENDER

Render mode. Primitives are rasterized, producing pixel fragments, which are written into the frame buffer. This is the normal mode and also the default mode.

GL_SELECT

Selection mode. No pixel fragments are produced, and no change to the frame buffer contents is made. Instead, a record of the names of primitives that would have been drawn if the render mode was GL_RENDER is returned in a select buffer, which must be created (see glSelectBuffer3YZO_H9) before selection mode is entered.

GL_FEEDBACK

Feedback mode. No pixel fragments are produced, and no change to the frame buffer contents is made. Instead, the coordinates and attributes of vertices that would have been drawn had the render mode been GL_RENDER are returned in a feedback buffer, which must be created (see glFeedbackBuffer3L6J_WO) before feedback mode is entered.

 

Remarks

The glRenderMode function takes one argument, mode, which can assume one of three predefined values above.

The return value of the glRenderMode function is determined by the render mode at the time glRenderMode is called, rather than by mode. The values returned for the three render modes are as follows:

GL_RENDER

Zero.

GL_SELECT

The number of hit records transferred to the select buffer.

GL_FEEDBACK

The number of values (not vertices) transferred to the feedback buffer.

 

Refer to glSelectBuffer3YZO_H9 and glFeedbackBuffer3L6J_WO for more details concerning selection and feedback operation.

If an error is generated, glRenderMode returns zero regardless of the current render mode.

The following function retrieves information related to glRenderMode:

glGet8KNKTW with argument GL_RENDER_MODE

 

Error Codes

The following are the error codes generated and their conditions.

Error Code

Condition

GL_INVALID_ENUM

mode was not one of the three accepted values.

GL_INVALID_OPERATION

glSelectBuffer3YZO_H9 was called while the render mode was GL_SELECT, or if glRenderMode was called with argument GL_SELECT before glSelectBuffer was called at least once.

GL_INVALID_OPERATION

glFeedbackBuffer3L6J_WO was called while the render mode was GL_FEEDBACK, or if glRenderMode was called with argument GL_FEEDBACK before glFeedbackBuffer was called at least once.

GL_INVALID_OPERATION

glRenderMode was called between a call to glBegin and the corresponding call to glEnd.

 

See Also

glBegin, glEnd, glFeedbackBuffer, glInitNames, glLoadName, glPassThrough, glPushName, glSelectBuffer