The glRenderMode function sets the rasterization mode.
GLint glRenderMode( GLenum mode );
- The rasterization mode. The following three values are accepted. The default value is GL_RENDER.
Value Meaning GL_RENDER Render mode. Primitives are rasterized, producing pixel fragments, which are written into the framebuffer. This is the normal mode and also the default mode. GL_SELECT Selection mode. No pixel fragments are produced, and no change to the framebuffer 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 glSelectBuffer) before selection mode is entered. GL_FEEDBACK Feedback mode. No pixel fragments are produced, and no change to the framebuffer 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 glFeedbackBuffer) before feedback mode is entered.
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_SELECT||The number of hit records transferred to the select buffer.|
|GL_FEEDBACK||The number of values (not vertices) transferred to the feedback buffer.|
If an error is generated, glRenderMode returns zero regardless of the current render mode.
The following function retrieves information related to glRenderMode:
glGet with argument GL_RENDER_MODE
The following are the error codes generated and their conditions.
|GL_INVALID_ENUM||mode was not one of the three accepted values.|
|GL_INVALID_OPERATION||glSelectBuffer 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||glFeedbackBuffer 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.|
Windows NT/2000: Requires Windows NT 3.5 or later.
Windows 95/98: Requires Windows 95 or later. Available as a redistributable for Windows 95.
Header: Declared in Gl.h.
Library: Use Opengl32.lib.