glPolygonOffset: set the scale and bias used to calculate depth
values.
C Specification |
Parameters |
Description |
Notes |
Errors |
Associated Gets |
See Also
void glPolygonOffset(
GLfloat factor,
GLfloat units)
- 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.
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 factorz + runits, where z 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.
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.
- GL_INVALID_OPERATION is generated if glPolygonOffset is executed
between the execution of glBegin and
the corresponding execution of glEnd.
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.
glDepthFunc,
glDisable,
glEnable,
glGet,
glIsEnabled,
glLineWidth,
glStencilOp,
glTexEnv