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 zum Berechnen des Nebelmischungsfaktors f verwendet werden soll. Es werden drei symbolische Konstanten 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. Es werden nur nicht bestimmte Dichten akzeptiert. Die Standardnebeldichte ist 1,0.
GL_FOG_START
Der params-Parameter ist ein einzelner ganzzahliger Wert, der den Start angibt, die in der linearen Nebelgleichung verwendete Nahdistanz. Die standardnahe Entfernung ist 0,0.
GL_FOG_END
Der params-Parameter ist ein einzelner ganzzahliger Wert, der das Ende angibt, also die ferne Entfernung, die in der linearen Nebelgleichung verwendet wird. Der Standardabstand ist 1,0.
GL_FOG_INDEX
Der params-Parameter ist ein ganzzahliger Wert, der if angibt, den Nebelfarbindex. Der Standard-Nebelindex ist 0.0.
GL_FOG_COLOR
Der params-Parameter enthält vier ganzzahlige oder Gleitkommawerte, die Cf , die Nebelfarbe angeben. Ganzzahlige Werte werden linear so zugeordnet, dass der positivste darstellbare Wert 1,0 und der negativste darstellbare Wert -1,0 zugeordnet wird. Gleitkommawerte werden direkt zugeordnet. Nach der Konvertierung werden alle Farbkomponenten an den Bereich [0,1] geklemmt. Die Standardfarbe des Nebels ist (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 einzelnen 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 mithilfe des Arguments GL_FOG. Obwohl er aktiviert ist, wirkt sich Nebel auf gerasterte Geometrie, Bitmaps und Pixelblöcke aus, aber nicht auf Vorgänge zum Pufferlöschen.

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

Nebel mischt eine Nebelfarbe mit der Posttexturingfarbe jedes gerasterten Pixelfragments unter Verwendung eines Mischfaktors f. Faktor f wird je nach Nebelmodus auf eine von drei Arten berechnet. Lassen Sie z die Entfernung in Augenkoordinaten vom Ursprung bis zum Fragment sein, das beschlagen wird. Die Gleichung für GL_LINEAR Nebel lautet:

Formel, die den Wert des Mischfaktors in GL_LINEAR Nebelmodus als Funktion der Entfernung anzeigt.

Die Gleichung für GL_EXP Nebel lautet:

Formel, die den Wert des Mischfaktors im GL_EXP Nebelmodus zeigt.

Die Gleichung für GL_EXP2 Nebel lautet:

Formel, die den Wert des Mischfaktors im GL_EXP2 Nebelmodus anzeigt.

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

Gleichung, die die Farbe des beschlagenen Fragments als Funktion des Mischfaktors und der Nebelfarbe anzeigt.

Im Farbindexmodus wird der Farbindex des Fragments durch ersetzt.

Formel, die den Farbindex des beschlagenen Fragments als Funktion des Mischfaktors und der indizierten Farbe anzeigt.

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

glGet mit Argument GL_FOG_COLOR

glGet with argument GL_FOG_INDEX

glGet mit Argument GL_FOG_DENSITY

glGet mit Argument GL_FOG_START

glGet with argument GL_FOG_END

glGet mit Argument GL_FOG_MODE

glIsEnabled mit Argument GL_FOG

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