NAME
glPolygonOffset
- set the scale and units used to calculate depth values
C SPECIFICATION
void ggllPPoollyyggoonnOOffffsseett(
GLfloat _f_a_c_t_o_r,
GLfloat _u_n_i_t_s )
delim $$
PARAMETERS
-
_f_a_c_t_o_r
-
Specifies a scale factor that is used to create a variable
depth offset for each polygon. The initial value is 0.
-
_u_n_i_t_s
-
Is multiplied by an implementation-specific value to
create a constant depth offset. The initial value is 0.
DESCRIPTION
When GGLL__PPOOLLYYGGOONN__OOFFFFSSEETT__FFIILLLL, GGLL__PPOOLLYYGGOONN__OOFFFFSSEETT__LLIINNEE, or
GGLL__PPOOLLYYGGOONN__OOFFFFSSEETT__PPOOIINNTT is enabled, each
fragment's _d_e_p_t_h value will be offset after it is interpolated
from the _d_e_p_t_h 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.
ggllPPoollyyggoonnOOffffsseett is useful for rendering hidden-line images, for applying decals
to surfaces, and for rendering solids with highlighted edges.
NOTES
ggllPPoollyyggoonnOOffffsseett is available only if the GL version is 1.1 or greater.
ggllPPoollyyggoonnOOffffsseett has no effect on depth coordinates placed in the
feedback buffer.
ggllPPoollyyggoonnOOffffsseett has no effect on selection.
ERRORS
GGLL__IINNVVAALLIIDD__OOPPEERRAATTIIOONN is generated if ggllPPoollyyggoonnOOffffsseett is executed
between the execution of ggllBBeeggiinn and the corresponding
execution of ggllEEnndd.
ASSOCIATED GETS
ggllIIssEEnnaabblleedd with argument
GGLL__PPOOLLYYGGOONN__OOFFFFSSEETT__FFIILLLL,
GGLL__PPOOLLYYGGOONN__OOFFFFSSEETT__LLIINNEE,
or GGLL__PPOOLLYYGGOONN__OOFFFFSSEETT__PPOOIINNTT.
ggllGGeett with argument GGLL__PPOOLLYYGGOONN__OOFFFFSSEETT__FFAACCTTOORR or
GGLL__PPOOLLYYGGOONN__OOFFFFSSEETT__UUNNIITTSS.
SEE ALSO
ggllDDeepptthhFFuunncc((33GG)),
ggllEEnnaabbllee((33GG)),
ggllGGeett((33GG)),
ggllIIssEEnnaabblleedd((33GG))