gl.PolygonOffset(factor, units)
#GL_POLYGON_OFFSET_FILL
, #GL_POLYGON_OFFSET_LINE
, or #GL_POLYGON_OFFSET_POINT
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 * delta(Z) + r * units , where delta(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.
gl.PolygonOffset()
is useful for rendering hidden-line images, for applying decals to surfaces, and for rendering solids
with highlighted edges.
gl.PolygonOffset()
has no effect on depth coordinates placed in the feedback buffer.
gl.PolygonOffset()
has no effect on selection.
Please consult an OpenGL reference manual for more information.
#GL_INVALID_OPERATION
is generated if gl.PolygonOffset()
is executed between the execution of gl.Begin() and the corresponding execution of gl.End().
#GL_POLYGON_OFFSET_FILL
, #GL_POLYGON_OFFSET_LINE
, or #GL_POLYGON_OFFSET_POINT
.
gl.Get() with argument #GL_POLYGON_OFFSET_FACTOR
or #GL_POLYGON_OFFSET_UNITS
.