glPolygonOffset
NAME
glPolygonOffset - set the scale and units used to calculate
depth values
C SPECIFICATION
void glPolygonOffset(GLfloat factor,
GLfloat units)
PARAMETERS
factor
| Specifies a scale factor that is used to create a
variable depth offset for each polygon. The initial value is 0.
|
units
| Is multiplied by an implementation-specific value to
create a constant depth offset. The initial value is 0.
|
DESCRIPTION
When GL_POLYGON_OFFSET is enabled, each fragment's depth value will be offset
after it is interpolated from the depth values of the appropriate vertices. The
value of the offset is factor * DZ + r * units,
where DZ is a measurement of the change in depth relative to the screen
area of the polygon, and r is the smallest value that is guaranteed to
produce a resolvable offset for a given implementation. The offset is added
before the depth test is performed and before the value is written into the
depth buffer.
glPolygonOffset is useful for rendering hidden-line images,
for applying decals to surfaces, and for rendering solids
with highlighted edges.
NOTES
glPolygonOffset is available only if the GL version is 1.1 or greater.
glPolygonOffset has no effect on depth coordinates placed in
the feedback buffer.
glPolygonOffset has no effect on selection.
ERRORS
GL_INVALID_OPERATION is generated if glPolygonOffset is
executed between the execution of glBegin and the
corresponding execution of glEnd.
ASSOCIATED GETS
glIsEnabled with argument GL_POLYGON_OFFSET_FILL,
GL_POLYGON_OFFSET_LINE, or GL_POLYGON_OFFSET_POINT
glGet with argument GL_POLYGON_OFFSET_FACTOR or
GL_POLYGON_OFFSET_UNITS
SEE ALSO
glDepthFunc,
glEnable,
glGet,
glIsEnabled,
glLineWidth,
glStencilOp,
glTexEnv