Seite 1 von 1

[C++] Dateiformat für Model

Verfasst: 27.11.2009, 23:33
von exploid
...

Re: [C++] Dateiformat für Model

Verfasst: 28.11.2009, 04:07
von Zudomon
Ohne mich jetzt genauer mit der Thematik zu beschäftigen, hört sich 3 am flexibelsten an. Und dann noch eins der ersten beiden Möglichkeiten als Default setzen. :)

Re: [C++] Dateiformat für Model

Verfasst: 28.11.2009, 13:25
von Krishty
Der Code mit dem 3DS-Loader ist jetzt belanglos, weil es um eine Designentscheidung geht und nicht um Code. Außerdem haben Mitglieder dieser Community eine Bibliothek entwickelt, die das alles für dich laden kann ;)
exploid hat geschrieben:1. alle Modelle die in der 3ds Datei enthalten sind in einen Vertexbuffer/Indexbuffer zu speichern. Vorteil: Geschwindigkeit beim Rendern. Nachteil: Objekthierarchie geht verloren.
Richtig, es kann sich nichts mehr drehen oder bewegen. Wie löst du das? Indem du dynamische Objekte als eigene Models verpackst und die auch wieder einzeln renderst. Am Ende hast du also unbewusst 2. implementiert.
exploid hat geschrieben:3. den Anwender entscheiden lassen was er braucht. Fall 1. oder Fall 2.
Wer ist der Anwender?
exploid hat geschrieben:oder gibt es noch eine zusätzliche Lösung.
Bone-Animations. Renderst alles in einem Rutsch, aber mit Transformationsmatrizen pro Vertex. Der Nachteil ist, dass dann statische Modelle langsamer werden und der Programmieraufwand steigt.

Gruß, Ky

Re: [C++] Dateiformat für Model

Verfasst: 06.12.2009, 23:16
von exploid
...

Re: [C++] Dateiformat für Model

Verfasst: 07.12.2009, 09:05
von kimmi
Zu deinem Code: Benutzt du c++? Wenn ja: Da brauchst du die typedefs nicht, das struct-Statement reicht. Und ich würde großgeschriebene Deklarationen prinzipiell nur für Preprozessor-Deklarationen benutzen. Das klingt nun bestimmt wie Erbsen-Zählerei, aber ich habe selber schon Stunden damit zugebracht, Fehler durch Überschreibungen vom Präprozessor zu korrigieren, die mir Fremdlibs umgestellt haben.

Gruß Kimmi

Re: [C++] Dateiformat für Model

Verfasst: 07.12.2009, 13:09
von Aramis
Ich würde dir stark empfehlen, Assimp direkt in deinem Programm zu nutzen. Modellimporter selber zu schreiben ist unnötig mühselig und bedeutet viel Pflegeaufwand. Sonderlich viel lernen kannst du von archaischen Formaten wie 3DS ehrlich gesagt auch nicht, allenfalls noch das Konzept eines Szenengraphen.

Re: [C++] Dateiformat für Model

Verfasst: 07.12.2009, 14:49
von Krishty
Der Vollständigkeit halber: Du kannst natürlich auch mehrere Modelle in einen Vertex- und Index-Buffer speichern und sie von dort aus einzeln rendern. Du sparst aber so gut wie keinen Speicher, solltest keine bemerkenswerten Geschwindigkeitsvorteile feststellen können und die Anzahl der Draw-Calls bleibt gleich.