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 Umgebungsparameters für eine einwertige Textur. 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
GL _ INVALID _ ENUM
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.
GL _ INVALID _ OPERATION
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 pname-Parameter ist GL _ TEXTURE _ ENV _ MODE. 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 Triple aus 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 Index t für das Texturbild, das Tiefskript c auf die Texturumgebungsfarbe und subscript v gibt einen von der Texturfunktion erzeugten Wert an.

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
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 = A? Af Av = Af

_Der _ GL TEXTURE-ENV-MODUS _ ist standardmäßig auf GL _ MODULATE eingestellt.

Die folgende Funktion ruft Informationen im Zusammenhang mit glTexEnvi ab:

glTexGetEnviv

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

glEnd

glTexImage1D

glTexImage2D

glTexParameter