Files |  Tutorials |  Articles |  Links |  Home |  Team |  Forum |  Wiki |  Impressum

Aktuelle Zeit: Sa Jul 19, 2025 22:52

Foren-Übersicht » Programmierung » OpenGL
Unbeantwortete Themen | Aktive Themen



Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Autor Nachricht
 Betreff des Beitrags: Überlegungen zu einem OBJ-Loader
BeitragVerfasst: Di Nov 06, 2007 11:04 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Feb 23, 2005 15:54
Beiträge: 24
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.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 06, 2007 12:10 
Offline
DGL Member
Benutzeravatar

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...

Gruß,
MatReno

_________________
http://texelviews.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 06, 2007 12:16 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Feb 23, 2005 15:54
Beiträge: 24
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.


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 06, 2007 13:37 
Offline
DGL Member
Benutzeravatar

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. :wink:

PS: In unserem Exporter triangulieren wir auch 8)

_________________
http://texelviews.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Anschlussfrage
BeitragVerfasst: Di Nov 06, 2007 13:51 
Offline
DGL Member
Benutzeravatar

Registriert: Mi Feb 23, 2005 15:54
Beiträge: 24
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?


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 06, 2007 15:59 
Offline
DGL Member
Benutzeravatar

Registriert: Mo Jan 31, 2005 11:02
Beiträge: 432
Wohnort: Rheinlandpfalz
Sowohl als auch.
Wenn ich die Punktnormalen habe reicht es ja eigentlich aus. Dannn kann ich gesmoothte und nicht gesmoothte Flächen darstellen.

_________________
http://texelviews.delphigl.com


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags:
BeitragVerfasst: Di Nov 06, 2007 21:50 
Offline
DGL Member
Benutzeravatar

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...

Viele Grüße
dj3htut1


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 7 Beiträge ] 
Foren-Übersicht » Programmierung » OpenGL


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 6 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.

Suche nach:
Gehe zu:  
  Powered by phpBB® Forum Software © phpBB Group
Deutsche Übersetzung durch phpBB.de
[ Time : 0.008s | 15 Queries | GZIP : On ]