glTexEnvfv-Funktion
Die glTexEnvfv-Funktion legt einen Texturumgebungsparameter fest.
Syntax
void WINAPI glTexEnvfv(
GLenum target,
GLenum pname,
const GLfloat *params
);
Parameter
-
Ziel
-
Eine Texturumgebung. Muss GL _ TEXTURE _ ENV sein.
-
pname
-
Der symbolische Name eines Umgebungsparameters für eine einwertige Textur. Akzeptierte Werte sind GL _ TEXTURE _ ENV _ MODE und GL TEXTURE _ _ ENV _ COLOR.
-
params
-
Ein Zeiger auf ein Array von Parametern: entweder eine einzelne symbolische Konstante oder eine RGBA-Farbe.
Rückgabewert
Diese Funktion gibt keinen Wert zurück.
Fehlercodes
Die folgenden Fehlercodes können von der glGetError-Funktion abgerufen werden.
| Name | Bedeutung |
|---|---|
|
target oder pname war keiner der akzeptierten definierten Werte, oder wenn params einen definierten konstanten Wert aufweisen sollten (basierend auf dem Wert von pname) und nicht. |
|
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEndaufgerufen. |
Bemerkungen
Eine Texturumgebung gibt an, wie Texturwerte interpretiert werden, wenn ein Fragment texturiert wird. Der Zielparameter muss GL _ TEXTURE _ ENV sein. Der Parameter pname kann entweder GL _ TEXTURE _ ENV _ MODE oder GL TEXTURE _ _ ENV _ COLOR sein.
Wenn pname gl _ TEXTURE _ ENV MODE ist, ist _ params (oder zeigt auf) den symbolischen Namen einer Texturfunktion. Es werden drei Texturfunktionen definiert: GL _ MODULATE, GL _ DECAL und GL _ BLEND.
Eine Texturfunktion wirkt auf das Fragment, das mithilfe des Texturbildwerts texturiert werden soll, der für das Fragment gilt (siehe glTexParameter)und erzeugt eine RGBA-Farbe für dieses Fragment. Die folgende Tabelle zeigt, wie die RGBA-Farbe für jede der drei Texturfunktionen erzeugt wird, die ausgewählt werden können. C ist ein Dreifaches von Farbwerten (RGB), und A ist der zugeordnete Alphawert. RGBA-Werte, die aus einem Texturbild extrahiert werden, liegen im Bereich [ von 0, ] 1. Der Tiefgestellte f bezieht sich auf das eingehende Fragment, den Tiefgestellten t zum Texturbild, das Tiefgestellte c auf die Texturumgebungsfarbe und subscript v gibt einen wert an, der von der Texturfunktion erzeugt wird.
Ein Texturbild kann bis zu vier Komponenten pro Texturelement enthalten (siehe glTexImage1D und glTexImage2D). In einem Einkomponentenimage gibt Lt diese einzelne Komponente an. Ein Bild mit zwei Komponenten verwendet L? und A? . Ein Bild mit drei Komponenten hat nur einen Farbwert, C? . Ein Bild mit vier Komponenten verfügt über einen Farbwert C? und einen Alphawert A? .
| Anzahl der Komponenten | GL_MODULATE | GL_DECAL | GL_BLEND |
|---|---|---|---|
| 1${REMOVE}$ |
Cv = L? Cf | undefined${REMOVE}$ |
Cv = (1 - L? )Cf + L? Cc |
| Av = Af | Av = Af | ||
| 2${REMOVE}$ |
Cv = L? Cf | undefined${REMOVE}$ |
Cv = (1 - L? )Cf + L? Cc |
| A v = Af | Av = Af | ||
| 3${REMOVE}$ |
Cv = C? Cf | Cv = C? | undefined${REMOVE}$ |
| Av = Af | Av = Af | ||
| 4${REMOVE}$ |
Cv = C? Cf | Cv = (1 - A? )Cf + A? C? | undefined${REMOVE}$ |
| Av = A? Af | Av = Af |
Wenn pname GL _ TEXTURE _ ENV _ COLOR ist, ist params ein Zeiger auf ein Array, das eine RGBA-Farbe enthält, die aus vier Werten besteht. Ganzzahlige Farbkomponenten werden linear interpretiert, sodass die positivste ganze Zahl 1,0 und die negativste ganze Zahl -1,0 zugeordnet wird. Die Werte werden an den Bereich [ 0 und 1 klammern, ] wenn sie angegeben werden. C c nimmt diese vier Werte an.
_Der _ GL TEXTURE-ENV-MODUS _ ist standardmäßig auf GL _ MODULATE und GL TEXTURE _ _ ENV _ COLOR standardmäßig auf (0, 0, 0, 0) eingestellt.
Die folgende Funktion ruft Informationen im Zusammenhang mit glTexEnvfv ab:
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 |
|
| Bibliothek |
|
| DLL |
|