[C++] Dateiformat für Model
Re: [C++] Dateiformat für Model
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. :)
- Krishty
- Establishment
- Beiträge: 8237
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: [C++] Dateiformat für Model
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 ;)
Gruß, Ky
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:1. alle Modelle die in der 3ds Datei enthalten sind in einen Vertexbuffer/Indexbuffer zu speichern. Vorteil: Geschwindigkeit beim Rendern. Nachteil: Objekthierarchie geht verloren.
Wer ist der Anwender?exploid hat geschrieben:3. den Anwender entscheiden lassen was er braucht. Fall 1. oder Fall 2.
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.exploid hat geschrieben:oder gibt es noch eine zusätzliche Lösung.
Gruß, Ky
- kimmi
- Moderator
- Beiträge: 1405
- Registriert: 26.02.2009, 09:42
- Echter Name: Kim Kulling
- Wohnort: Luebeck
- Kontaktdaten:
Re: [C++] Dateiformat für Model
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
Gruß Kimmi
- Aramis
- Moderator
- Beiträge: 1458
- Registriert: 25.02.2009, 19:50
- Echter Name: Alexander Gessler
- Wohnort: 2016
- Kontaktdaten:
Re: [C++] Dateiformat für Model
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.
- Krishty
- Establishment
- Beiträge: 8237
- Registriert: 26.02.2009, 11:18
- Benutzertext: state is the enemy
- Kontaktdaten:
Re: [C++] Dateiformat für Model
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.