Bezeichnung
gl.NormalPointer -- definiert eine Reihe von Normalen
Übersicht
gl.NormalPointer(normalArray[, type])
Beschreibung
gl.NormalPointer() gibt ein Feld von Normalen an, die beim Rendern verwendet werden sollen. normalArray kann entweder eine eindimensionale Tabelle sein, die aus einer beliebigen Anzahl aufeinanderfolgender Normalen besteht, oder eine zweidimensionale Tabelle, die aus einer beliebigen Anzahl von Untertabellen besteht, die jeweils eine Normale enthält. Jede Normale muss x-, y- und z-Koordinaten enthalten, die als Gleitkommawerte angegeben sind. Wenn normalArray eine eindimensionale Tabelle ist, müssen Sie das optionale Argument type auf #GL_TRUE setzen. Wenn normalArray eine zweidimensionale Tabelle ist, kann das optionale Argument type weglassen oder auf #GL_FALSE gesetzt werden.

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

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

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

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

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

Normalen-Feld-Parameter sind Klient-Seitige Zustände und werden daher nicht durch gl.PushAttrib() und gl.PopAttrib() gespeichert oder wiederhergestellt . Verwenden Sie stattdessen gl.PushClientAttrib() und gl.PopClientAttrib().

Weitere Informationen finden Sie in einem OpenGL-Referenzhandbuch.

Eingaben
normalArray
ein- oder zweidimensionale Tabelle mit Normalenwerten oder Nil (siehe oben)
type
optional: #GL_TRUE wenn die Tabelle in normalArray eine eindimensionale Tabelle ist, sonst #GL_FALSE (Voreingestellt ist #GL_FALSE)
Verbundene get-operationen
gl.IsEnabled() mit dem Argument #GL_NORMAL_ARRAY

gl.Get() mit dem Argument #GL_NORMAL_ARRAY_TYPE

gl.Get() mit dem Argument #GL_NORMAL_ARRAY_STRIDE

gl.GetPointer() mit dem Argument #GL_NORMAL_ARRAY_POINTER


Navigation zeigen