glMultiTexCoord: Unterschied zwischen den Versionen

Aus DGL Wiki
Wechseln zu: Navigation, Suche
K (Parameter)
(Beschreibung)
Zeile 43: Zeile 43:
  
 
== Beschreibung ==  
 
== Beschreibung ==  
'''glMultiTexCoord''' definiert die vier Texturkoordinaten (s, t, r, q).
+
'''glMultiTexCoord''' definiert die Texturkoordinaten (s, t, r, q) für 1 bis 4 Dimensionen. Je nach genutzer Funktion werden die Koordinaten auf folgende Werte gesetzt:
 +
 
 +
{|{{Prettytable_B1}}
 +
!Funktion
 +
!Wert
 +
|-
 +
|glMultiTexCoord1
 +
|(s, 0, 0, 1)
 +
|-
 +
|glMultiTexCoord4
 +
|(s, t, 0, 1)
 +
|-
 +
|glMultiTexCoord4
 +
|(s, t, r, 1)
 +
|-
 +
|glMultiTexCoord4
 +
|(s, t, r, q)
 +
|-
 +
|}
  
 
Die aktuellen Texturkoordinaten sind Teil der Daten die sich auf jeden [[Vertex]] auswirken.
 
Die aktuellen Texturkoordinaten sind Teil der Daten die sich auf jeden [[Vertex]] auswirken.
 
 
  
 
== Hinweise ==
 
== Hinweise ==

Version vom 6. September 2009, 00:10 Uhr

Hinweis: Diesem Artikel sollten folgende Bilder beigefügt werden:

(Mehr Informationen/weitere Artikel)
Bildwunsch.jpg
Ein Multitexturing-Beispielbild. Das Detailmapping Bild von Sascha wird schon zu oft verwendet. ;)

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 Texturkoordinaten (s, t, r, q) für 1 bis 4 Dimensionen. Je nach genutzer Funktion werden die Koordinaten auf folgende Werte gesetzt:

Funktion Wert
glMultiTexCoord1 (s, 0, 0, 1)
glMultiTexCoord4 (s, t, 0, 1)
glMultiTexCoord4 (s, t, r, 1)
glMultiTexCoord4 (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