Du bist nicht angemeldet.

Werbeanzeige

ByteJunkie

Alter Hase

  • »ByteJunkie« ist der Autor dieses Themas

Beiträge: 742

Wohnort: Deutschland

Beruf: Softwareentwickler

  • Private Nachricht senden

1

20.02.2017, 10:47

Die Tribase und den Modellconverter mit Assimp auf Boneanimation erweitern

Ich hatte ja schon mal angefangen den Modellconverter um die Assimp Funktionalität zu erweitern. Was mir mit nicht animierten Modelldateien ja auch leidlich gelungen ist. (David schlägt sicher beide Hände über den Kopft zusammen, wenn er den Quellcode sieht) :D
Ich würde das Tribaseformat sehr gerne auch mit Boenanimation ausstatten. Die Quellcodes dazu, die ich im Internet gefunden habe laufen aber alle mit OpenGL. Da das doch ein wenig anders funktioniert als die Tribase hatte ich bisher so meine Probleme den Tribase-Code dahingehend anzupassen.

Ich hatte dann einen anderen Beispielcode mit X-Dateien gefunden und hab meinen Charakter dann halt damit animiert. So ganz glücklich bin ich aber damit auch nicht, weil das, was ich machen möchte nicht funktioniert und das was ich damit machen kann nicht besonders gefällt.

Jetzt zum Punkt: Weiß Jemand, wo ich einen Assimp CPP-Beispiel-Quellcode finde mit Boneanimation ohne OpenGL und sonstige Finessen? :this:
"Alle Menschen sind klug. Die einen vorher, die anderen nachher." :huh:

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von »ByteJunkie« (20.02.2017, 16:07)


Schrompf

Alter Hase

Beiträge: 1 239

Wohnort: Dresden

Beruf: Softwareentwickler

  • Private Nachricht senden

2

20.02.2017, 12:01

Im Assimp-Source gibt es AssimpView, der das mit DX9 macht. Aber ich fürchte, Du bist da auf dem falschen Dampfer. Du findest nur deswegen Beispiele mit OpenGL, weil richtige Bone Animation heutzutage praktisch nur noch im VertexShader angewendet werden. Du musst also auf jeden Fall Deine Shader anpassen und pro Modell in jedem Frame einen Satz Transformationsmatrizen schreiben.

Da ist der AssimpView-Source vielleicht ein ganz guter Start. Dort findest Du z.B. eine Klasse, die aus Assimp-Strukturen die aktuelle Pose ausrechnen kann, also genau diesen Satz Transformationsmatrizen, wie Du ihn nachher im Shader brauchst.
Häuptling von Dreamworlds. Baut aktuell an nichts konkretem, weil das Vollzeitangestelltenverhältnis ihn fest im Griff hat. Baut daneben nur noch sehr selten an der Open Asset Import Library mit.

ByteJunkie

Alter Hase

  • »ByteJunkie« ist der Autor dieses Themas

Beiträge: 742

Wohnort: Deutschland

Beruf: Softwareentwickler

  • Private Nachricht senden

3

20.02.2017, 13:07

Aha,

danke Schrompf. Du meinst sicher SimpleAssimpViewX unter Samples. Ich hab nichts gegen einen Shader für die Boneanimation ein zu wenden. Solange man die Quellcodes einigermaßen nachvollziehen kann.

Auch der OpenGL Beispielcode hat mir schon ganz gut geholfen und, wenn ich mich lange genug damit befasse komm ich damit wahrscheinlich auch klar. Aber Du hast recht.
Weil ich momentan einen Code ohne Shader für Mystery Outback mit D3DXLoadMeshHierarchyFromX benutze, dachte ich es gibt für Assimp vielleicht auch so etwas.

Im Grunde ist das Ganze eigentlich keine große Sache. Trotzdem winde ich mich irgendwie immer drum herum. :huh:
Eines ist auf jeden Fall Sicher. Wenn das TBM-Format mit Boneanimation ausgerüstet ist, werden auch meine NPC-Modelle besser aussehen.
"Alle Menschen sind klug. Die einen vorher, die anderen nachher." :huh:

Werbeanzeige