GLPOLYGONOFFSET() MachTen Programmer’s Manual GLPOLYGONOFFSET()

NAME
glPolygonOffset - set the scale and units used to calcu-
late depth values

C SPECIFICATION
void glPolygonOffset( GLfloat factor,
GLfloat units )

delim $$

PARAMETERS
factor Specifies a scale factor that is used to create a
variable depth offset for each polygon. The ini-
tial 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 writ-
ten 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 corre-
sponding 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, glDisable, glEnable, glGet, glIsEnabled,
glLineWidth, glStencilOp, glTexEnv