glFrontFace: Unterschied zwischen den Versionen
Flash (Diskussion | Beiträge) K (→Fehlermeldungen) |
Flash (Diskussion | Beiträge) K |
||
Zeile 25: | Zeile 25: | ||
== Beschreibung == | == Beschreibung == | ||
− | Eine Szene besteht vielfach aus geschlossenen Objekten oder andere Flächen, deren Rückseite man standardmäßig nicht sieht. Wenn man diese nicht sichtbaren Flächen vom Zeichnen ausschließt, kann man den Zeichenvorgang enorm beschleunigen. Das Ausschließen erfolgt über das Aktivieren des [[Backfaceculling | Backfacecullings]] mittels [[glEnable]] und dem Parameter ''GL_CULL_FACE''. <br> | + | Eine Szene besteht vielfach aus geschlossenen Objekten oder andere Flächen, deren Rückseite man standardmäßig nicht sieht. Wenn man diese nicht sichtbaren Flächen vom Zeichnen ausschließt, kann man den Zeichenvorgang enorm beschleunigen. Das Ausschließen erfolgt über das Aktivieren des [[Backfaceculling | Backfacecullings]] mittels [[glEnable]] und dem Parameter '''GL_CULL_FACE'''. <br> |
Mithilfe von [[glCullFace]] kann man bestimmen ob die Vorder- oder die Rückseiten eines Polygones nicht gezeichnet werden sollen. <br> | Mithilfe von [[glCullFace]] kann man bestimmen ob die Vorder- oder die Rückseiten eines Polygones nicht gezeichnet werden sollen. <br> | ||
− | Als Parameter wird ''glFrontFace'' eine Richtung übergeben, die festlegt, ob eine Seite eine Vorderseite ist. <br> | + | Als Parameter wird '''glFrontFace''' eine Richtung übergeben, die festlegt, ob eine Seite eine Vorderseite ist. <br> |
Diese Richtungsangabe ist folgendermaßen zu verstehen: <br> | Diese Richtungsangabe ist folgendermaßen zu verstehen: <br> | ||
− | Wenn ein imaginäres Objekt den Kanten des Polygons, beginnend beim ersten übergeben Eckpunkt | + | Wenn ein imaginäres Objekt den Kanten des Polygons, beginnend beim ersten übergeben Eckpunkt nachfolgt und sich bezüglich dem Inneren des Polygones in genau der Richtung bewegt, die mit '''glFrontFace''' festgelegt wurde, dann ist diese Seite die Vorderseite. <br> |
− | Der Standartwert ist ''GL_CCW''. Das heißt, Polygone deren Punkte entgegen dem Uhrzeigersinn definiert wurden, werden als Vorderseite erkannt. | + | Der Standartwert ist '''GL_CCW'''. Das heißt, Polygone deren Punkte entgegen dem Uhrzeigersinn definiert wurden, werden als Vorderseite erkannt. |
<br> | <br> | ||
Zeile 46: | Zeile 46: | ||
== Zugehörige Wertrückgaben == | == Zugehörige Wertrückgaben == | ||
− | [[glGet]] mit Token GL_FRONT_FACE | + | [[glGet]] mit Token '''GL_FRONT_FACE''' |
<br> | <br> | ||
== Siehe auch == | == Siehe auch == | ||
+ | [[glCullFace]], [[glLightModel]] | ||
+ | |||
Hintergrundwissen: [[Backfaceculling]] | Hintergrundwissen: [[Backfaceculling]] | ||
− | |||
− | |||
[[Kategorie:GL|FrontFace]] | [[Kategorie:GL|FrontFace]] |
Version vom 25. Januar 2005, 22:06 Uhr
Inhaltsverzeichnis
glFrontFace
Name
glFrontFace - bestimmt welche Seite eines Polygons die Vorder- bzw. Rückseite ist.
Delphi-Spezifikation
procedure glFrontFace(mode: TGLenum);
Parameter
mode | Gibt die Reihenfolge an, in der die Eckpunkte definiert werden müssen um eine Vorderseite zu bilden. Zur Verfügung stehen zwei Konstanten: Standard ist GL_CCW. |
---|
Beschreibung
Eine Szene besteht vielfach aus geschlossenen Objekten oder andere Flächen, deren Rückseite man standardmäßig nicht sieht. Wenn man diese nicht sichtbaren Flächen vom Zeichnen ausschließt, kann man den Zeichenvorgang enorm beschleunigen. Das Ausschließen erfolgt über das Aktivieren des Backfacecullings mittels glEnable und dem Parameter GL_CULL_FACE.
Mithilfe von glCullFace kann man bestimmen ob die Vorder- oder die Rückseiten eines Polygones nicht gezeichnet werden sollen.
Als Parameter wird glFrontFace eine Richtung übergeben, die festlegt, ob eine Seite eine Vorderseite ist.
Diese Richtungsangabe ist folgendermaßen zu verstehen:
Wenn ein imaginäres Objekt den Kanten des Polygons, beginnend beim ersten übergeben Eckpunkt nachfolgt und sich bezüglich dem Inneren des Polygones in genau der Richtung bewegt, die mit glFrontFace festgelegt wurde, dann ist diese Seite die Vorderseite.
Der Standartwert ist GL_CCW. Das heißt, Polygone deren Punkte entgegen dem Uhrzeigersinn definiert wurden, werden als Vorderseite erkannt.
Hinweise
Sollten Polygone teilweise oder komplett bei aktivierten Backfaceculling verschwinden, haben Sie die Reihenfolge der Eckpunkte teilweise vertauscht (Punkte in X-Form übergeben) oder die Punkte komplett in der entgegengesetzten Reihenfolge übergeben.
Fehlermeldungen
GL_INVALID_ENUM wird generiert wenn mode ein ungültiger Wert übergeben wird.
GL_INVALID_OPERATION wird generiert wenn glFrontFace innerhalb eines glBegin-glEnd Blocks aufgerufen wird.
Zugehörige Wertrückgaben
glGet mit Token GL_FRONT_FACE
Siehe auch
Hintergrundwissen: Backfaceculling