glPolygonOffset-Funktion

Die glPolygonOffset-Funktion legt die Skalierung und die Einheiten fest, die OpenGL zum Berechnen von Tiefenwerten verwendet.

Syntax

void WINAPI glPolygonOffset(
   GLfloat factor,
   GLfloat units
);

Parameter

Faktor

Gibt einen Skalierungsfaktor an, der verwendet wird, um einen variablen Tiefenoffset für jedes Polygon zu erstellen. Der Anfangswert ist 0 (null).

Einheiten

Gibt einen Wert an, der mit einem implementierungsspezifischen Wert multipliziert wird, um einen konstanten Tiefenoffset zu erstellen. Der Anfangswert ist 0.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Der folgende Fehlercode kann von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL_INVALID_OPERATION
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen.

Bemerkungen

Wenn GL_POLYGON_OFFSET aktiviert ist, wird der Tiefenwert jedes Fragments versetzt, nachdem er von den Tiefenwerten der entsprechenden Scheitelpunkte interpoliert wurde. Der Wert des Offsets ist faktor * ?z + r *units, wobei ?z ein Maß für die Änderung der Tiefe relativ zum Bildschirmbereich des Polygons und r der kleinste Wert ist, der garantiert einen auflösbaren Offset für eine bestimmte Implementierung erzeugt. Der Offset wird hinzugefügt, bevor der Tiefentest durchgeführt wird und bevor der Wert in den Tiefenpuffer geschrieben wird.

Die glPolygonOffset-Funktion eignet sich zum Rendern ausgeblendeter Linienbilder, zum Anwenden von Decals auf Oberflächen und zum Rendern von Volltonkörpern mit hervorgehobenen Kanten.

Die glPolygonOffset-Funktion hat keine Auswirkung auf die Tiefenkoordinaten, die im Feedbackpuffer platziert werden. Es hat auch keine Auswirkungen auf die Auswahl.

Die folgenden Funktionen rufen Informationen im Zusammenhang mit glPolygonOffset ab:

  • glGet mit Argument GL_POLYGON_OFFSET_FACTOR
  • glGet mit Argument GL_POLYGON_OFFSET_UNITS
  • glIsEnabled mit Argument GL_POLYGON_OFFSET_FILL
  • glIsEnabled mit Argument GL_POLYGON_OFFSET_LINE
  • glIsEnabled mit Argument GL_POLYGON_OFFSET_POINT

Hinweis

Die glPolygonOffset-Funktion ist nur in OpenGl Version 1.1 oder höher verfügbar.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Gl.h
Bibliothek
Opengl32.lib
DLL
Opengl32.dll

Weitere Informationen

glDepthFunc

glDisable

glEnable

glGet

glIsEnabled

glLineWidth

glStencilOp

glTexEnv