Frage

In openGL, habe ich ein Objekt bekam, dass ich skalieren, indem -1 entlang einer Achse ... Daraus ergibt sich die Aufgabe nicht richtig machen, weil alle die Vorderseiten sind jetzt wieder zugewandt ist. Kurz des Sperrens Culling, wie würde ich diese Aufgabe richtig zu machen? Gibt es eine Möglichkeit, es zu tun, ohne die strukturierten normalen Eckpunkte zu modifizieren, dass mein Modell machen?

War es hilfreich?

Lösung

Sie können einfach den Culling-Modus wechseln. Sie können glCullFace(mode) verwenden, um zu entscheiden, welche Dreiecke gekeult werden sollen. Zuführen eines Parameters GL_BACK Mittel, die nur nach vorn gerichtete Polygone gerendert werden, während ein Parameter der GL_FRONT bedeutet, dass nur Rückseiten Polygone gerendert werden. Also, wenn Ihre Transformation bedeutet, dass die „Rückseiten“ Polygone sind in der Tat frontfacing, glCullFace(GL_FRONT) Aufruf sollte es tun.

Als Alternative Sie auch, welche Polygone werden als vorne / hinten gewandte mit glFrontFace(dir), mit einem Parameter von GL_CW (im Uhrzeigersinn) oder GL_CCW (gegen den Uhrzeigersinn) steuern können (Standard ist gegen den Uhrzeigersinn so, wenn Sie es clocksie originaly nach hinten gewandten Polygone setzen würde als frontfacing).

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top