Up to date

This page is up to date for Godot 4.2. If you still find outdated information, please open an issue.

Überlegungen zum Modellexport

Bevor Sie ein 3D-Modell aus einer 3D-Modellierungsanwendung wie Blender exportieren, sollten Sie einige Überlegungen anstellen, um sicherzustellen, dass das Modell den Konventionen und bewährten Praktiken für Godot entspricht.

Konventionen zur Ausrichtung von 3D-Assets

Godot verwendet ein rechtshändiges Y-ist-oben-Koordinatensystem, wobei die -Z-Achse die Vorwärtsrichtung der Kamera ist. Dies entspricht dem OpenGL-System. Das bedeutet, dass bei einer Kamera +Z hinten, +X rechts und -X links ist.

Die Konvention für 3D-Assets ist es, in die entgegengesetzte Richtung der Kamera zu schauen, so dass Charaktere und andere Assets standardmäßig der Kamera zugewandt sind. Diese Konvention ist in 3D-Modellierungsanwendungen sehr verbreitet und wurde in glTF als Teil der glTF 2.0-Spezifikation gernormt. Das bedeutet, dass für orientierte 3D-Assets (wie Charaktere) die +Z-Achse die Richtung der Vorderseite ist, also ist -Z die Rückseite, +X die linke Seite und -X die rechte Seite eines 3D-Assets. In Blender bedeutet dies, dass +Y die Rückseite und -Y die Vorderseite eines Assets ist.

Wenn Sie ein orientiertes 3D-Asset in Godot drehen, verwenden Sie die Option use_model_front für die look_at-Funktionen, und verwenden Sie die Konstanten Vector3.MODEL_*, um Berechnungen im Local-Space des orientierten Assets durchzuführen.

Bei Objekten ohne eigene Vorderseite oder Vorwärtsrichtung, wie z.B. einer Spielkarte oder einem Terrain, sind stattdessen die Himmelsrichtungen zu beachten. In Godot und den meisten anderen Anwendungen gilt die Konvention, dass +X für Osten und -X für Westen steht. Aufgrund des rechtshändigen Y-ist-oben-Koordinatensystems von Godot bedeutet dies, dass +Z Süden und -Z Norden ist. In Blender bedeutet dies, dass +Y im Norden und -Y im Süden liegt.

Texturen separat exportieren

Während Texturen mit einem Modell in bestimmten Dateiformaten, wie glTF 2.0, exportiert werden können, können Sie sie auch separat exportieren. Godot verwendet PBR (Physik-basiertes Rendering) für seine Materialien, wenn also ein Texturierungsprogramm PBR-Texturen exportieren kann, funktionieren sie auch in Godot. Dazu gehören die Substance Suite, ArmorPaint (open source) und Material Maker (open source).

Bemerkung

Weitere Informationen zu den Materialien von Godot finden Sie unter Standardmaterial 3D und ORM-Material 3D.

Überlegungen zum Exportieren

Da GPUs nur Dreiecke rendern können, müssen Meshes, die Quads oder N-Gons enthalten, trianguliert werden, bevor sie gerendert werden können. Godot kann Meshes beim Importieren triangulieren, aber die Ergebnisse könnten unvorhersehbar oder falsch sein, insbesondere bei N-Gons. Unabhängig von der Zielanwendung führt das Triangulieren vor dem Exportieren der Szene zu konsistenteren Ergebnissen und sollte nach Möglichkeit durchgeführt werden.

Um Probleme mit falscher Triangulation nach dem Import in Godot zu vermeiden, wird empfohlen, die 3D-Modellierungssoftware dazu zu bringen, Objekte selbst zu triangulieren. In Blender können Sie dies tun, indem Sie Ihren Objekten einen Triangulationsmodifikator hinzufügen und sicherstellen, dass Apply Modifiers im Exportdialog aktiviert ist. Alternativ können Sie, je nach Exporter, im Exportdialog die Option Triangulate Faces suchen und aktivieren.

Um Probleme mit der 3D-Auswahl im Editor zu vermeiden, empfiehlt es sich, die Objekttransformation in der 3D-Modellierungssoftware anzuwenden, bevor die Szene exportiert wird.

Bemerkung

Es ist wichtig, dass das Mesh beim Export nicht durch Knochen deformiert wird. Stellen Sie sicher, dass das Skelett vor dem Export mit Ihrem bevorzugten 3D-Editor auf seine T-Pose oder seine Default-Standardpose zurückgesetzt wird.

Überlegungen zur Beleuchtung

Es ist zwar möglich, Lichter aus einer 3D-Szene in den Formaten glTF, .blend oder Collada zu importieren, aber im Allgemeinen ist es ratsam, die Beleuchtung der Szene nach dem Import im Godot-Editor zu gestalten.

Auf diese Weise erhalten Sie ein genaueres Gefühl für das Endergebnis, da verschiedene Engines Lichter auf unterschiedliche Weise rendern. Auf diese Weise wird auch vermieden, dass die Lichter durch den Importvorgang zu stark oder zu schwach erscheinen.