Normal Per Face oder Per Vertex
-
hi
welche Variante sollte man bevorzugen, oder ist es vom Verwendnungszweck abhängig??? Kann man auch beides gleichzeitig benutzen???
Und gibt es eine Methode aus GL_TRIANGLES ein GL_TRIANGLE_STRIP zu macht.
gruß
de_Bert
-
ja, ist vom Verwendungszweck abhängig
nee, gibt keine Methode, wie willst 2 getrennte dreiecke in nem TRIANGLE_STRIP darstellen?
-
Abbadon schrieb:
wie willst 2 getrennte dreiecke in nem TRIANGLE_STRIP darstellen?
Indem man degenerierte Dreiecke einfügt.
Bye, TGGC (Der Held ist zurück)
-
hi
zu 2:
Ne es ist schon ein zusammenhängendes Model. Nur spückt mein Modeler nur GL_TRIANGLES aus. Und ich wollte jetzt aus diesem Model dann ein GL_TRIANGLE_STRIP machen. Zur Speed optimierung :D.gruß
de_Bert
-
de_Bert schrieb:
hi
zu 2:
Ne es ist schon ein zusammenhängendes Model. Nur spückt mein Modeler nur GL_TRIANGLES aus. Und ich wollte jetzt aus diesem Model dann ein GL_TRIANGLE_STRIP machen. Zur Speed optimierung :D.gruß
de_BertPer Algorithmus. Nur Du kannst wissen, wo die Strips anfangen und enden sollen...
-
Such im Netz einfach mal nach TriangleStrip generation ..
Du musst dir letztendlich nur über den Algo im Klaren werden. Du erstellst zuerst einen Baum oder besser ein Array das die Verbindungen zwischen den Dreiecken berechnet. (2gleiche Indices == gleiche Kante)
Dann fängst du bei irgendeinem Dreieck an und gehst in eine bestimmte Richtung, CW/CCW wechsel achten.
Das machst du solange bis an der ecke wo fortgesetzt werden muss kein Dreieck mehr ist, oder ein bereits eingefügts.Als Optimierung kann ich erstmal vorschlagen.
Mit dem Dreieck das die wenigsten verbindungen hat anfangen.
Jeden TriStrip auch rückwärts gehen und beide kostenlos zusammenfügen.
Mehrere Strips fügst du mit 2-3 void Vertices zusammen.
(Strips die rückwärts als CCW enden kann man sogar mit nur 1-2void Vertices zusammenfügen)Ich komm bei mir so auf eine Ersparnis von 60%-30%, je nach Model.
-
hi
cool locker. Danke schön.
Ahhh ich sehe es schon vor mir wie ich versuche einen "Rekursiven Algorithmus" zu entwickeln. Das grauhen näht.
aber naja es wird schon.
gruß
de_Bert
-
de_Bert schrieb:
Das grauhen näht.
MUAHAHAHAHAHAHAHAHAHAHAHAHAHAHA...!!! *prust*
-
freak
-
Die Rekursion brauchst du dabei nicht. Hatte ich am Anfang auch.
Da ist aber ein Fehler drin.Wenn du erstmal einen Punkt und eine Richtung gewählt hast ist der weitere Weg der Triangles vorgeschrieben ! Das heist du kannst nicht rekursiv alle 3 Ecken des Dreiecks ausprobieren und am Ende das längste nehmen. (das kannst du nur beim ersten Dreieck machen ! *Tip: is ne gute Optimierung*)
Du kannst das ganze also ruhig in ne For-Schleife packen.
-
http://developer.nvidia.com/object/nvtristrip_library.html
vielleicht hilfts dir