Ich plane, einen Loader für das OBJ-Format zu schreiben. Bei der Lektüre der Loader anderer Leute fiel mir auf, dass niemand Strips verwendet. Haltet ihr es für sinnvoll, den Aufwand zu betreiben, zu versuchen, die einzelnen Faces als Strips zu verketten? Würde sich gar ein anderes Dateiformat eher anbieten?
Außerdem würde mich interessieren, inwieweit ihr es für empfehlenswert erachtet, ein Modell beim Export aus Blender zu triangulieren, um Vierecke loszuwerden.
Registriert: Mo Jan 31, 2005 11:02 Beiträge: 432 Wohnort: Rheinlandpfalz
Bei unserem Loader haben wir zwar alle Arten von Polygonen mit einbezogen (also: Triangle, Quad, Polygon, Line, Point), aber ich denke es würde Sinn machen sich nur auf Triangles zu konzentrieren (steigert Performance). Daher auch in Blender beim Exportieren zu triangulieren.
hypertexthobo hat geschrieben:
Bei der Lektüre der Loader anderer Leute fiel mir auf, dass niemand Strips verwendet. Haltet ihr es für sinnvoll, den Aufwand zu betreiben, zu versuchen, die einzelnen Faces als Strips zu verketten?
Ich denke der Aufwand ist ziemlich groß gegenüber dem Gewinn der Performance... Außerdem kann man ja nicht jedes beliebige Model in GL_TRIANGLE_STRIP umformen. D.h.: Es ist gar nicht möglich alles über Strips zu machen. Bsp: Unterseite eines Cones (nötig wäre hier GL_TRIANGLE_FAN, oder GL_TRIANGLE).
hypertexthobo hat geschrieben:
Außerdem würde mich interessieren, inwieweit ihr es für empfehlenswert erachtet, ein Modell beim Export aus Blender zu triangulieren, um Vierecke loszuwerden.
Wie oben angedeutet: Würde ich empfehlen, falls du einen eigenen Exporter für Blender schreibst. Wenn du aber einen (den) vorgefertigten benutzt, der eben nicht trianguliert, solltest du schon alle möglichen Formen (Tris, Quads, Polys (, Lines, Points) ) unterstützen, oder darauf hinweisen, dass man es manuell in Blender machen muss...
Ja, dein Werk hatte ich mir auch angesehen;-) Bin allerdings gerade auf C++ Abwegen unterwegs... Danke für deine Einschätzung.
MatReno hat geschrieben:
Wenn du aber einen (den) vorgefertigten benutzt, der eben nicht trianguliert, solltest du schon alle möglichen Formen (Tris, Quads, Polys (, Lines, Points) ) unterstützen, oder darauf hinweisen, dass man es manuell in Blender machen muss...
Der Standard-Exporter besitzt eine Option, Polygone zu triangulieren.
Registriert: Mo Jan 31, 2005 11:02 Beiträge: 432 Wohnort: Rheinlandpfalz
hypertexthobo hat geschrieben:
Der Standard-Exporter besitzt eine Option, Polygone zu triangulieren.
Ok, dann ist das ja in Ordnung. Habe halt schon lang nix mehr mit diesem Obj-Exporter gemacht, da wir gerade dabei sind einen eigenen Exporter mit Loader zu schreiben, der dann auch Animationen unterstützt. Das ganze wollen wir dann als dll rausgeben, mit nem pascal header... Sollte aber nicht zu schwer sein sich zusätzlich einen für c zu schreiben.
Was hat eigentlich zur Entscheidung geführt, in eurem Loader keine Smoothing Groups zu unterstützen? Eine potentiell schwierige Implementierung oder die angesichts der Möglichkeit, Punktnormalen zu laden, nicht gegebene Notwendigkeit?
Registriert: Di Dez 27, 2005 12:44 Beiträge: 393 Wohnort: Berlin
Programmiersprache: Java, C++, Groovy
Hallo,
MatReno hat geschrieben:
Ich denke der Aufwand ist ziemlich groß gegenüber dem Gewinn der Performance... Außerdem kann man ja nicht jedes beliebige Model in GL_TRIANGLE_STRIP umformen. D.h.: Es ist gar nicht möglich alles über Strips zu machen. Bsp: Unterseite eines Cones (nötig wäre hier GL_TRIANGLE_FAN, oder GL_TRIANGLE).
Also ich denke, dass es sich schon lohnt ein Mesh in Triangle-Strips zu zerlegen.
Der Performancegewinn ist garnicht so gering (im Optimalfall eine Verdreifachung).
Bei statischen Modellen muss die Umwandlung in Triangle-Strips auch nur einmal gemacht werden.
Zur Not kann man neben GL_TRIANGLE_STRIP auch noch Triangle-Fans zulassen...
Mitglieder in diesem Forum: 0 Mitglieder und 9 Gäste
Du darfst keine neuen Themen in diesem Forum erstellen. Du darfst keine Antworten zu Themen in diesem Forum erstellen. Du darfst deine Beiträge in diesem Forum nicht ändern. Du darfst deine Beiträge in diesem Forum nicht löschen. Du darfst keine Dateianhänge in diesem Forum erstellen.