GLAPI/glPolygonOffset: Difference between revisions
m Bot: Adding better formatting. |
JeffKhronos (talk | contribs) |
||
(2 intermediate revisions by one other user not shown) | |||
Line 17: | Line 17: | ||
== Description == | == Description == | ||
When {{ | When {{enum|GL_POLYGON_OFFSET_FILL}}, {{enum|GL_POLYGON_OFFSET_LINE}}, or {{enum|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'' * ''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. | '''glPolygonOffset''' is useful for rendering hidden-line images, for applying decals to surfaces, and for rendering solids with highlighted edges. | ||
Line 23: | Line 23: | ||
== Associated Gets == | == Associated Gets == | ||
{{apifunc|glIsEnabled}} with argument {{ | {{apifunc|glIsEnabled}} with argument {{enum|GL_POLYGON_OFFSET_FILL}}, {{enum|GL_POLYGON_OFFSET_LINE}}, or {{enum|GL_POLYGON_OFFSET_POINT}}. | ||
{{apifunc|glGet}} with argument {{ | {{apifunc|glGet}} with argument {{enum|GL_POLYGON_OFFSET_FACTOR}} or {{enum|GL_POLYGON_OFFSET_UNITS}}. | ||
== See Also == | == See Also == | ||
{{apifunc|glDepthFunc}}, {{apifunc|glEnable | {{apifunc|glDepthFunc}}, {{apifunc|glEnable}} | ||
== Copyright == | == Copyright == | ||
Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see [ | Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see [https://khronos.org/registry/OpenGL-Refpages/LICENSES/LicenseRef-FreeB.txt LicenseRef-FreeB]. | ||
[[Category:Core API Ref Rasterization|PolygonOffset]] | [[Category:Core API Ref Rasterization|PolygonOffset]] | ||
[[Category:Core API Reference|PolygonOffset]] | [[Category:Core API Reference|PolygonOffset]] |
Latest revision as of 22:09, 5 February 2021
Core in version | 4.6 | |
---|---|---|
Core since version | 1.0 |
glPolygonOffset: set the scale and units used to calculate depth values
Function Definition
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.
Description
When 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 * 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.
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
Copyright
Copyright © 1991-2006 Silicon Graphics, Inc. This document is licensed under the SGI Free Software B License. For details, see LicenseRef-FreeB.