glTexEnvi-Funktion
Die glTexEnvi-Funktion legt einen Texturumgebungsparameter fest.
Syntax
void WINAPI glTexEnvi(
GLenum target,
GLenum pname,
GLint param
);
Parameter
-
Ziel
-
Eine Texturumgebung. Muss GL_TEXTURE_ENV sein.
-
pname
-
Der symbolische Name eines einwertigen Texturumgebungsparameters. Muss GL_TEXTURE_ENV_MODE sein.
-
param
-
Eine einzelne symbolische Konstante, eine von GL_MODULATE, GL_DECAL, GL_BLEND oder GL_REPLACE.
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 (basierend auf dem Wert von pname) aufweisen sollten und nicht. |
|
Die Funktion wurde zwischen einem Aufruf von glBegin und dem entsprechenden Aufruf von glEnd aufgerufen. |
Bemerkungen
Eine Texturumgebung gibt an, wie Texturwerte interpretiert werden, wenn ein Fragment texturiert wird. Der Zielparameter muss GL_TEXTURE_ENV sein. Der pname-Parameter ist GL_TEXTURE_ENV_MODE. Es werden drei Texturfunktionen definiert: GL_MODULATE, GL_DECAL und GL_BLEND.
Eine Texturfunktion wirkt auf das zu texturierte Fragment mithilfe des Texturbildwerts, 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 der Farbwerte (RGB) und A der zugeordnete Alphawert. RGBA-Werte, die aus einem Texturbild extrahiert werden, liegen im Bereich [0, 1]. Das Tiefgestellt f bezieht sich auf das eingehende Fragment, das Tiefgestellt t auf das Texturbild, das Subskript c auf die Texturumgebungsfarbe und subscript v auf einen wert, der von der Texturfunktion erzeugt wird.
Ein Texturbild kann bis zu vier Komponenten pro Texturelement enthalten (siehe glTexImage1D und glTexImage2D). In einem Bild mit einer Komponente gibt Lt diese einzelne Komponente an. Ein Zweikomponentenimage verwendet L? und A? . Ein Bild mit drei Komponenten hat nur den Farbwert C? . Ein Bild mit vier Komponenten hat sowohl den Farbwert C? als auch den 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 |
Av = 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 = Eine?Af | Av = Af |
GL_TEXTURE_ENV_MODE ist standardmäßig GL_MODULATE.
Die folgende Funktion ruft Informationen im Zusammenhang mit glTexEnvi ab:
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 |
|