Wie kann ich zur Laufzeit eine .FBX-Datei aus Unity3D exportieren?

7

Ich möchte ein Objekt als exportieren .fbx zur Laufzeit in Unity3D exportieren.

Ich habe ein C # -Skript erstellt, um einen Netzfilter oder einen enthäuteten Netzrenderer zur .objLaufzeit in eine Datei zu exportieren , aber ich möchte die Animations- und Skin-Unterstützung, die nur .fbxunterstützt wird.

Nach einigen Recherchen .dllscheint die Verwendung des Autodesk FBX SDK oder eines anderen externen Geräts meine beste Option zu sein. Wie rufe ich zur Laufzeit das FBX SDK von Autodesk auf? Gibt es andere externe .dlls, die ich dafür verwenden könnte?

Eine andere Möglichkeit könnte darin bestehen, die Netzinformationen als Textdatei zu schreiben und dann .fbxin Export zu konvertieren .

Timothy Williams
quelle
4
Muss es FBX sein? Dies ist ein proprietäres, meist undokumentiertes Format, auf das die meisten Benutzer nur über das FBX SDK zugreifen können. Vergleichen Sie beispielsweise mit Collada, das offen und gut dokumentiert ist und in jedem Tool funktionieren sollte, in das Sie die generierte FBX laden.
Sean Middleditch
4
Genauer gesagt, warum exportieren Sie zur Laufzeit? Möglicherweise gibt es eine andere Lösung für das, was Sie tatsächlich tun möchten, als die Lösung, die Sie für erforderlich halten.
Tetrad
Unterstützt Collada gehäutete Mesh-Renderer und Animationen? Wenn so etwas funktioniert, wurde mir FBX nur gesagt, weil es Informationen enthalten kann und weil es für jede 3D-Plattform funktioniert. Und ich exportiere zur Laufzeit, da dies der gesamte Zweck dieses Skripts ist. Im Wesentlichen kann der Benutzer das Netz und die Texturen seines Charakters anpassen, dann auf die Schaltfläche "Exportieren" klicken und die Texturen und .fbx für den Charakter herunterladen. Dies alles geschieht im Web-Player. Ich habe es mit Texturen, Animationen und .OBJ arbeiten lassen. Aber ich möchte .FBX, weil es enthäutete Mesh-Renderer und Animationen unterstützt
Timothy Williams
Wenn ich jedoch in ein anderes unterstütztes 3D-Format exportieren könnte, das Skin-Informationen und spezielle Animationsinformationen enthalten könnte, würde dies sogar noch besser funktionieren als .FBX.
Timothy Williams
@TimothyWilliams Collada unterstützt Skinning und Animationen.
SurvivalMachine

Antworten:

1

Autodesk verfügt über einen FBX-Konverter , der .objs aufnehmen und .fbx ausgeben kann. Enthalten ist ein Befehlszeilen-Tool, das Sie zur Laufzeit von Ihrem Spiel aus aufrufen können. Solange Sie nicht möchten, dass diese Funktionalität auf jeden Spieler verteilt wird, sollte dies ausreichen.

kat0r
quelle
Obwohl die obigen Kommentare nützlich sind, beantwortet dies direkt die Frage.
Seth Battin