GLAPI/glPolygonMode

From OpenGL.org
Jump to: navigation, search
glPolygonMode
Core in version 4.4
Core since version 1.0

glPolygonMode: select a polygon rasterization mode

Function Definition

 void glPolygonMode(GLenum face​, GLenum mode​);
face
Specifies the polygons that mode​ applies to. Must be GL_FRONT_AND_BACK​ for front- and back-facing polygons.
mode
Specifies how polygons will be rasterized. Accepted values are GL_POINT​, GL_LINE​, and GL_FILL​. The initial value is GL_FILL​ for both front- and back-facing polygons.

Description

glPolygonMode controls the interpretation of polygons for rasterization. face​ describes which polygons mode​ applies to: both front and back-facing polygons (GL_FRONT_AND_BACK​). The polygon mode affects only the final rasterization of polygons. In particular, a polygon's vertices are lit and the polygon is clipped and possibly culled before these modes are applied.

Three modes are defined and can be specified in mode​:

GL_POINT​
Polygon vertices that are marked as the start of a boundary edge are drawn as points. Point attributes such as GL_POINT_SIZE​ and GL_POINT_SMOOTH​ control the rasterization of the points. Polygon rasterization attributes other than GL_POLYGON_MODE​ have no effect.
GL_LINE​
Boundary edges of the polygon are drawn as line segments. Line attributes such as GL_LINE_WIDTH​ and GL_LINE_SMOOTH​ control the rasterization of the lines. Polygon rasterization attributes other than GL_POLYGON_MODE​ have no effect.
GL_FILL​
The interior of the polygon is filled. Polygon attributes such as GL_POLYGON_SMOOTH​ control the rasterization of the polygon.

Examples

To draw a surface with outlined polygons, call

glPolygonMode(, );

Notes

Vertices are marked as boundary or nonboundary with an edge flag. Edge flags are generated internally by the GL when it decomposes triangle stips and fans.

Errors

GL_INVALID_ENUM​ is generated if either face​ or mode​ is not an accepted value.

Associated Gets

glGet with argument GL_POLYGON_MODE​

See Also

glLineWidth, glPointSize

Copyright

Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see http://oss.sgi.com/projects/FreeB/.