Export (0) Print
Expand All
Expand Minimize

glPolygonOffset function

Applies to: desktop apps only

The glPolygonOffset function sets the scale and units OpenGL uses to calculate depth values.

Syntax

void WINAPI glPolygonOffset(
  GLfloat factor,
  GLfloat units
);

Parameters

factor

Specifies a scale factor that is used to create a variable depth offset for each polygon. The initial value is zero.

units

Specifies a value that is multiplied by an implementation-specific value to create a constant depth offset. The initial value is 0.

Return value

This function does not return a value.

Error codes

The following error code can be retrieved by the glGetError function.

NameMeaning
GL_INVALID_OPERATION

The function was called between a call to glBegin and the corresponding call to glEnd.

Remarks

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 * Δz + r *units, 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.

The glPolygonOffset function is useful for rendering hidden-line images, for applying decals to surfaces, and for rendering solids with highlighted edges.

The glPolygonOffset function has no effect on depth coordinates placed in the feedback buffer. It also has no effect on selection.

The following functions retrieve information related to glPolygonOffset:

  • glGet with argument GL_POLYGON_OFFSET_FACTOR
  • glGet with argument GL_POLYGON_OFFSET_UNITS
  • glIsEnabled with argument GL_POLYGON_OFFSET_FILL
  • glIsEnabled with argument GL_POLYGON_OFFSET_LINE
  • glIsEnabled with argument GL_POLYGON_OFFSET_POINT

Note  The glPolygonOffset function is only available in OpenGl version 1.1 or greater.

Requirements

Minimum supported client

Windows 2000 Professional

Minimum supported server

Windows 2000 Server

Header

Gl.h

Library

Opengl32.lib

DLL

Opengl32.dll

See also

glDepthFunc
glDisable
glEnable
glGet
glIsEnabled
glLineWidth
glStencilOp
glTexEnv

 

 

Send comments about this topic to Microsoft

Build date: 3/6/2012

Community Additions

ADD
Show:
© 2014 Microsoft