Importieren von Modellen von 3DS MAX in ein sparpgl (OpenGL / C #) -Programm?

StackOverflow https://stackoverflow.com//questions/9675857

  •  12-12-2019
  •  | 
  •  

Frage

Ich arbeite mit sharpgl und habenein .3ds-Modell, das ich in meinem Programm rendern möchte.

Ich suche nach einem Beispielcode-Snippet oder einem Tutorial, um mich zu leiten.

edit: Arbeiten mit .NET, um eine WPF-Anwendung mit einer SCHARDGL-Steuerung für OpenGL-Zeichnung zu erstellen.

War es hilfreich?

Lösung

Sie müssen einen Importeur- / Dateiformat-Reader / Loader schreiben. Du selber. Das ist ein wichtiger Schmerz. Das Gute ist, dass das .3DS-Dateiformat bekannt ist und dokumentiert .

Die schlechte Sache ist jedoch, dass das .3DS-Format obsolet ist und nicht alle Daten speichern, die moderne 3D-App benötigt. Zum Beispiel speichert es keine Oberflächennormalen und unterstützt keine gehinderten Maschen. Ich habe einen 3DS-Leser geschrieben, es hat nicht viel Spaß gemacht. Die andere gute Sache ist, dass jemand wahrscheinlich den 3DS-Lader zuvor geschrieben hat, und Sie können es mit Google finden. Das schlechte ist, dass (durch Murphys Gesetz) sie es wahrscheinlich auf solche Weise umgesetzt haben, die es mit Ihrem Code völlig unbrauchbar macht.

Es wird normalerweise empfohlen, ein anderes gut dokumentiertes Format (und stattdessen Schreibleser für dieses Format) zu verwenden. Oder Sie könnten Ihr eigenes Format für Modelle entwerfen, die alles unterstützt, was Sie möchten. Um jedoch von 3DS Max in dieses Format zu exportieren, müssen Sie jedoch für 3ds max (mit 3DS MAX SDK) Ihr eigenes Exporteur-Plugin (mit 3DS-Max-SDK), das mit 3D Mathematik und Programmierung (in C ++) große Vertrautheit erfordert. Ich habe bereits mehrere Exporteure geschrieben, und dies ist auch ein wichtiger Schmerz.

Die leichtere Lösung wäre daher, ein einfaches Format zu verwenden, mit dem Sie einen Loader einfach schreiben können. Etwas textbasiert, wie * .dxf. Oder Sie können nach einem anderen 3D-Modell-Dateiformat suchen, das hoffentlich mit einer Bibliothek zum Laden geliefert wird. Zum Beispiel kann Collada eines der Kandidaten sein, obwohl ich die Tatsache sehr nicht mag verwendet XML.

Andere Tipps

Überprüfen Sie den bereits verfügbaren Beitrag in diesem Zusammenhang.

3DS MAX-Objekt in OpenGL

Satish

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top