Bezeichnung
gl.TexCoordPointer -- definiert ein Feld von Texturkoordinaten
Übersicht
gl.TexCoordPointer(vArray[, size])
Beschreibung
gl.TexCoordPointer() gibt ein Feld von Texturkoordinaten an, die beim Rendern verwendet werden sollen. vArray kann entweder eine eindimensionale Tabelle sein, die aus einer beliebigen Anzahl von aufeinanderfolgenden Texturkoordinaten besteht, oder eine zweidimensionale Tabelle, die aus einer beliebigen Anzahl von Untertabellen besteht, die jeweils 1 bis 4 Texturkoordinaten enthalten. Wenn vArray eine eindimensionale Tabelle ist, müssen Sie auch das optionale Argument size übergeben, um die Anzahl der Texturkoordinaten pro Feld-Element zu definieren. Wenn vArray eine zweidimensionale Tabelle ist, wird size automatisch durch die Anzahl der Elemente in der ersten Untertabelle bestimmt, die ebenfalls im Bereich von 1 bis 4 liegen müssen.

Bei der Verwendung einer zweidimensionalen Tabelle ist zu beachten, dass die Anzahl der Texturkoordinaten in jeder Untertabelle konstant sein muss. Es ist nicht erlaubt, in den einzelnen Untertabellen eine unterschiedliche Anzahl von Texturkoordinaten zu verwenden. Die Anzahl der Texturkoordinaten wird durch die Anzahl der Elemente in der ersten Untertabelle definiert und alle folgenden Untertabellen müssen die gleiche Anzahl von Koordinaten verwenden.

Wenn Sie Nil in vArray übergeben, wird der Inhalt des Texturkoordinaten-Feld-Puffers gelöscht, aber er wird nicht aus OpenGL entfernt. Dies muss manuell erfolgen, z.B. durch Deaktivierung des Texturkoordinaten-Feldes oder durch Definition eines neuen Feldes.

Um ein Texturkoordinaten-Feld zu aktivieren und zu deaktivieren, rufen Sie den Befehl gl.EnableClientState() und gl.DisableClientState() mit dem Argument #GL_TEXTURE_COORD_ARRAY auf. Wenn aktiviert, wird das Texturkoordinaten-Feld verwendet, wenn gl.DrawArrays(), gl.DrawElements() oder gl.ArrayElement() aufgerufen wird.

Jedes Texturkoordinaten-Feld ist zunächst deaktiviert und wird nicht aufgerufen, wenn gl.DrawArrays(), gl.DrawElements() oder gl.ArrayElement() aufgerufen wird.

Die Ausführung von gl.TexCoordPointer() ist zwischen der Ausführung von gl.Begin() und gl.End() nicht erlaubt. Es kann ein Fehler auftreten oder auch nicht. Wenn kein Fehler erzeugt wird, ist die Operation undefiniert.

gl.TexCoordPointer() wird typischerweise auf der Klient-Seite implementiert.

Texturkoordinaten-Feld-Parameter sind klientseitig und werden daher nicht durch gl.PushAttrib() und gl.PopAttrib() gespeichert oder wiederhergestellt. Benutzen Sie stattdessen gl.PushClientAttrib() und gl.PopClientAttrib().

Weitere Informationen finden Sie in einem OpenGL-Referenzhandbuch.

Eingaben
vArray
ein- oder zweidimensionale Tabelle mit Texturkoordinaten oder Nil (siehe oben)
size
optional: Texturkoordinaten pro Feld-Element; muss zwischen 1 und 4 liegen und wird nur bei eindimensionalen Tabellen (siehe oben) verwendet
Fehler
#GL_INVALID_VALUE wird erzeugt, wenn size nicht 1, 2, 3 oder 4 ist.

Verbundene get-operationen
gl.IsEnabled() mit dem Argument #GL_TEXTURE_COORD_ARRAY

gl.Get() mit dem Argument #GL_TEXTURE_COORD_ARRAY_SIZE

gl.Get() mit dem Argument #GL_TEXTURE_COORD_ARRAY_TYPE

gl.Get() mit dem Argument #GL_TEXTURE_COORD_ARRAY_STRIDE

gl.GetPointer() mit dem Argument #GL_TEXTURE_COORD_ARRAY_POINTER


Navigation zeigen