glFogiv-Funktion

Die glFogfv-Funktion gibt Nebelparameter an.

Syntax

void WINAPI glFogiv(
         GLenum pname,
   const GLint  *params
);

Parameter

pname

Gibt einen Nebelparameter an.

Akzeptiert einen der folgenden Werte.

Wert Bedeutung
GL_FOG_MODE
Der Params-Parameter ist ein einzelner ganzzahliger Wert, der die Formel angibt, die verwendet werden soll, um den Nebelmischungsfaktor f zu berechnen. Drei symbolische Konstanten werden akzeptiert: GL_LINEAR, GL_EXP und GL_EXP2. Die Formeln, die diesen symbolischen Konstanten entsprechen, werden im folgenden Abschnitt "Hinweise" definiert. Der Standard-Nebelmodus ist GL_EXP.
GL_FOG_DENSITY
Der Params-Parameter ist ein einzelner ganzzahliger Wert, der die Dichte angibt, die Nebeldichte, die in beiden exponentiellen Nebelgleichungen verwendet wird. Nur nichtegative Verweigerungen werden akzeptiert. Die Standard-Nebeldichte beträgt 1,0.
GL_FOG_START
Der Parameter " Params " ist ein einzelner ganzzahliger Wert, der den Start angibt, der in der linearen Nebelgleichung verwendete Nahabstand. Der Standardabstand beträgt 0,0.
GL_FOG_END
Der Params-Parameter ist ein einzelner ganzzahliger Wert, der das Ende angibt, der weit entfernte Abstand, der in der linearen Nebelgleichung verwendet wird. Der standardweite Abstand beträgt 1,0.
GL_FOG_INDEX
Der Parameter "Params" ist ein einzelner ganzzahliger Wert, der if, den Nebelfarbenindex angibt. Der Standard-Nebelindex ist 0,0.
GL_FOG_COLOR
Der Params-Parameter enthält vier ganzzahlige oder Gleitkommawerte, die Cf angeben, die Nebelfarbe angeben. Ganzzahlwerte werden linear zugeordnet, sodass der positivste darstellbare Wert 1,0 zugeordnet ist und die negativste Darstellungswert auf -1.0 zugeordnet ist. Gleitkommawerte werden direkt zugeordnet. Nach der Konvertierung werden alle Farbkomponenten an den Bereich [0,1] geklammert. Die Standard-Nebelfarbe lautet (0,0,0,0).

params

Gibt den Wert oder die Werte an, die pname zugewiesen werden sollen. GL_FOG_COLOR erfordert ein Array von vier Werten. Alle anderen Parameter akzeptieren ein Array, das nur einen einzigen Wert enthält.

Rückgabewert

Diese Funktion gibt keinen Wert zurück.

Fehlercodes

Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.

Name Bedeutung
GL_INVALID_ENUM
pname war kein akzeptierter Wert.
GL_INVALID_OPERATION
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen.

Bemerkungen

Sie aktivieren und deaktivieren Nebel mit glEnable und glDisable, indem Sie das Argument GL_FOG verwenden. Während der Aktivierung wirkt sich Nebel auf gerasterte Geometrie, Bitmaps und Pixelblöcke aus, aber nicht auf Pufferlöschvorgänge.

Die glFogiv-Funktion weist den Wert oder die Werte in Params dem von pname angegebenen Nebelparameter zu.

Nebel blendet eine Nebelfarbe mit jeder gerasterten Pixelfragment-Posttexturingfarbe mit einem Blendingfaktor f zusammen. Faktor f wird je nach Nebelmodus in einer von drei Möglichkeiten berechnet. Lassen Sie z die Entfernung in Augenkoordinaten vom Ursprung zum Fragment sein, das beschlagt wird. Die Formel für GL_LINEAR Nebel lautet:

Equation showing the value of the blending factor in GL_LINEAR fog mode as a function of distance.

Die Formel für GL_EXP Nebel lautet:

Equation showing the value of the blending factor in GL_EXP fog mode.

Die Formel für GL_EXP2 Nebel lautet:

Equation showing the value of the blending factor in GL_EXP2 fog mode.

Unabhängig vom Nebelmodus wird f nach der Berechnung an den Bereich [0,1] geklammert. Wenn OpenGL sich im RGBA-Farbmodus befindet, wird der Farb-Cr des Fragments durch ersetzt.

Equation showing the fogged fragment's color as a function of blending factor and fog color.

Im Farbindexmodus wird der Farbindex des Fragments durch den Farbindex ir ersetzt.

Equation showing the fogged fragment's color index as a function of blending factor and indexed color.

Die folgenden Funktionen rufen Informationen im Zusammenhang mit den glFog-Funktionen ab:

glGet mit Argument GL_FOG_COLOR

glGet mit Argument GL_FOG_INDEX

glGet mit Argument GL_FOG_DENSITY

glGet mit Argument GL_FOG_START

glGet mit Argument GL_FOG_END

glGet mit Argument GL_FOG_MODE

glIsEnabled mit Argument GL_FOG

Requirements (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

glBegin

glDisable

glEnable

glEnd

glGet

glIsEnabled