glPolygonMode - select a polygon rasterization mode
glPolygonMode glPolygonMode(face, mode) -> None
void glPolygonMode( GLenum face,
GLenum mode )
face Specifies the polygons that mode applies to. Must be
GL_FRONT for front-facing polygons, GL_BACK for back-
facing polygons, or 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.
glPolygonMode controls the interpretation of polygons for
rasterization. face describes which polygons mode applies
to: front-facing polygons (GL_FRONT), back-facing polygons
(GL_BACK), or both (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. They are treated as connected
line segments for line stippling; the line
stipple counter and pattern are not reset
between segments (see glLineStipple). 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_STIPPLE
and GL_POLYGON_SMOOTH control the
rasterization of the polygon.
To draw a surface with filled back-facing polygons and outlined front-facing polygons, call glPolygonMode(GL_FRONT, GL_LINE);
Vertices are marked as boundary or nonboundary with an edge flag. Edge flags are generated internally by the GL when it decomposes polygons; they can be set explicitly using glEdgeFlag.
GL_INVALID_ENUM is generated if either face or mode is not an accepted value. GL_INVALID_OPERATION is generated if glPolygonMode is executed between the execution of glBegin and the corresponding execution of glEnd.
glGet with argument GL_POLYGON_MODE
glBegin, glEdgeFlag, glLineStipple, glLineWidth, glPointSize, glPolygonStipple
:: Documentation :: References :: GL ::
:: Index (n/a) ::