glNormal: Unterschied zwischen den Versionen
Aus DGL Wiki
Flash (Diskussion | Beiträge) (→Siehe auch) |
Flash (Diskussion | Beiträge) K (Bildwunsch) |
||
Zeile 1: | Zeile 1: | ||
+ | {{Bildwunsch|Ein kleiner Beispielcode mit Bild. Z.B. eine aus 4x4 Quads zusammengesetzte "Landschaft" mit eingezeichneten Normalen. Einmal mit "harten" Kanten und einmal weich.}} | ||
= glNormal = | = glNormal = | ||
Version vom 11. Juni 2009, 20:56 Uhr
Ein kleiner Beispielcode mit Bild. Z.B. eine aus 4x4 Quads zusammengesetzte "Landschaft" mit eingezeichneten Normalen. Einmal mit "harten" Kanten und einmal weich. |
Inhaltsverzeichnis
glNormal
Name
glNormal - setzt die aktuell gültige Normale.
Delphi-Spezifikation
procedure glNormal3b(nx: TGLbyte; ny: TGLbyte; nz: TGLbyte);
procedure glNormal3d(nx: TGLdouble; ny: TGLdouble; nz: TGLdouble);
procedure glNormal3f(nx: TGLfloat; ny: TGLfloat; nz: TGLfloat);
procedure glNormal3i(nx: TGLint; ny: TGLint; nz: TGLint);
procedure glNormal3s(nx: TGLshort; ny: TGLshort; nz: TGLshort);
procedure glNormal3bv(const v: PGLbyte);
procedure glNormal3dv(const v: PGLdouble);
procedure glNormal3fv(const v: PGLfloat);
procedure glNormal3iv(const v: PGLint);
procedure glNormal3sv(const v: PGLshort);
Parameter
Version mit 3 Einzelparametern (glNormal3*) :
nx, ny, nz | Geben die x, y und z Koordinaten der neuen Normale an. |
Version mit Parameterfeld (glNormal3*v) :
v | v ist ein Zeiger auf ein Feld welches 3 Werte enthält. Diese 3 Werte stellen die x, y und z-Koordinaten der neuen Normale dar. |
Initialisiert ist die Normale mit den Werten (0,0,1).
Beschreibung
Die aktuelle Normale wird immer dann auf die Übergebenen Koordinaten ausgerichtet, wenn glNormal aufgerufen wird.
Parameter in Byte-, Short- oder Integer-Typen werden so in Fließkommazahlen umgerechnet, dass die kleinstmögliche Zahl des Paramtertyps zu -1.0 und die größtmögliche Zahl zu 1.0 wird.
Hinweise
- Normalisierte Normalen
- Normale, die mit glNormal gesetzt werden, müssen keine Einheitslänge haben. (||n|| <> 1)
- Wenn Normalisierung aktiviert wurde, wird die Normale nach der Transformation normalisiert.
- Normalisierung kann mittels glEnable/glDisable und dem Argument GL_NORMALIZE kontrolliert werden.
- Standardmäßig ist Normalisierung deaktiviert.
- Die Normale kann zu jeder Zeit neu gesetzt werden. So kann glNormal auch innerhalb von glBegin-glEnd Blöcken aufgerufen werden.
Fehlermeldungen
keine
Zugehörige Wertrückgaben
glGet mit Token GL_CURRENT_NORMAL
glIsEnabled mit GL_NORMALIZE
Siehe auch
glBegin, glColor, glIndex, glTexCoord, glVertex
Hintergrundwissen: Normalen