glMultiTexCoord: Unterschied zwischen den Versionen
Aus DGL Wiki
Flash (Diskussion | Beiträge) K (→Siehe auch) |
Flash (Diskussion | Beiträge) K (→Parameter) |
||
Zeile 33: | Zeile 33: | ||
{| border="1" rules="all" | {| border="1" rules="all" | ||
! ''target'' | ! ''target'' | ||
− | | Bestimmt die Textureinheit, deren Koordinaten geändert werden soll. Die Anzahl der verfügbaren Textureinheiten ist Implementationsabhängig, | + | | Bestimmt die Textureinheit, deren Koordinaten geändert werden soll. Die Anzahl der verfügbaren Textureinheiten ist Implementationsabhängig, muss aber mindestens zwei sein. ''target'' muss als Wert eine der '''GL_TEXTURE'''i Konstanten zugewiesen werden, wobei 0 < i < '''GL_MAX_TEXTURE_UNITS - 1''' sein muss. ('''GL_MAX_TEXTURE_UNITS''' ist eine implementationsabhängige Konstante) |
|- | |- | ||
! ''s,t,r,q'' | ! ''s,t,r,q'' | ||
− | | Bestimmt die s,t,r und q Texturkoordinate der gewählten Textureinheit. Der Initilisierungwert ist (0, 0, 0, 1). | + | | Bestimmt die s,t,r und q Texturkoordinate der gewählten Textureinheit. Der Initilisierungwert ist (0, 0, 0, 1). (''Nur bei Variante ohne '''v''' im Namen.) |
|- | |- | ||
! ''v'' | ! ''v'' | ||
− | | Ist ein Pointer auf ein Feld, welches die Texturkoordinaten in der Reihenfolge s,t,r,q enthält. Die Länge des Feldes ist dabei von der Befehlsversion abhängig.(1-4 Werte) | + | | Ist ein Pointer auf ein Feld, welches die Texturkoordinaten in der Reihenfolge s,t,r,q enthält. Die Länge des Feldes ist dabei von der Befehlsversion abhängig.(1-4 Werte) (''Nur bei Variante mit '''v''' im Namen.) |
|} | |} | ||
− | |||
− | |||
− | |||
== Beschreibung == | == Beschreibung == |
Version vom 5. September 2009, 23:03 Uhr
Ein Multitexturing-Beispielbild. Das Detailmapping Bild von Sascha wird schon zu oft verwendet. ;) |
Inhaltsverzeichnis
glMultiTexCoord
Name
glMultiTexCoord - setzt die aktuellen Texturcoordinaten bei Multitexturing.
Delphi-Spezifikation
procedure glMultiTexCoord1i(target : GLenum; s : GLint); procedure glMultiTexCoord2i(target : GLenum; s : GLint; t : GLint); procedure glMultiTexCoord3i(target : GLenum; s : GLint; t : GLint; r : GLint); procedure glMultiTexCoord4i(target : GLenum; s : GLint; t : GLint; r : GLint; q : GLint);
procedure glMultiTexCoord1iv(target : GLenum; const v : PGLint); procedure glMultiTexCoord2iv(target : GLenum; const v : PGLint); procedure glMultiTexCoord3iv(target : GLenum; const v : PGLint); procedure glMultiTexCoord4iv(target : GLenum; const v : PGLint);
Außer den hier gezeigten Versionen für Integer (i,iv) gibt es den Befehl noch für:
- GLdouble (d,dv)
- GLfloat (f,fv)
- GLshort (s,sv)
Parameter
target | Bestimmt die Textureinheit, deren Koordinaten geändert werden soll. Die Anzahl der verfügbaren Textureinheiten ist Implementationsabhängig, muss aber mindestens zwei sein. target muss als Wert eine der GL_TEXTUREi Konstanten zugewiesen werden, wobei 0 < i < GL_MAX_TEXTURE_UNITS - 1 sein muss. (GL_MAX_TEXTURE_UNITS ist eine implementationsabhängige Konstante) |
---|---|
s,t,r,q | Bestimmt die s,t,r und q Texturkoordinate der gewählten Textureinheit. Der Initilisierungwert ist (0, 0, 0, 1). (Nur bei Variante ohne v im Namen.) |
v | Ist ein Pointer auf ein Feld, welches die Texturkoordinaten in der Reihenfolge s,t,r,q enthält. Die Länge des Feldes ist dabei von der Befehlsversion abhängig.(1-4 Werte) (Nur bei Variante mit v im Namen.) |
Beschreibung
glMultiTexCoord definiert die vier Texturkoordinaten (s, t, r, q).
Die aktuellen Texturkoordinaten sind Teil der Daten die sich auf jeden Vertex auswirken.
Hinweise
Es gilt immer: GL_TEXTUREi = GL_TEXTURE0 + i
Fehlermeldungen
GL_FEHLER wird generiert wenn....
GL_INVALID_OPERATION wird generiert wenn FUNCTIONNAME innerhalb eines glBegin-glEnd Blocks aufgerufen wird.
Zugehörige Wertrückgaben
glGetIntegerv mit Token GL_MAX_TEXTURE_UNITS
Siehe auch
glActiveTexture, glClientActiveTexture, glColor, glGetIntegerv, glNormal, glTexCoordPointer