Unity – Wie man glTF 3D-Modelle in Unity importiert

Das glTF File Format wird offiziell als „The JPEG of 3D“ bezeichnet und soll durch die Verwendung von JSON kleiner und schneller zu verarbeiten sein, als z.B. FBX. Wir zeigen, wie man das Format in Unity verwenden kann.

Was ist glTF?

glTF (Graphics Library Transmission Format oder GL Transmission Format und früher bekannt als WebGL Transmissions Format) ist ein Standarddateiformat für 3D Szenen und Modelle.

Der Kern von glTF ist eine JSON-Datei, die die Struktur und Zusammensetzung einer Szene mit 3D-Modellen beschreibt, die in einer einzigen binären glTF-Datei (.glb) gespeichert werden können. Die Datei kann dabei ähnlich viele Informationen und Elemente enthalten wie z.B. das FBX-Format: Szenen und Knoten, Kameras, Meshes, Puffer, Materialien, Texturen, Skins und Animationen.

Es ist ein relativ neues Format, dass 2015 erstmals veröffentlicht wurde. Dabei wird Wert auf einen offenen Standard und eine genaue Spezifikation gelegt. Der größte Unterschied zu FBX.
Inzwischen wird es von vielen 3D Programmen und Engines unterstützt.

Was ist nun besser – glTF oder FBX?

Einige sagen glTF, weil es ein offener Standard ist und besser spezifiziert ist. Andere vertrauen auf FBX, weil das u.U. von der verwendeten 3D-Software besser unterstützt wird. Einige sagen, es hängt vom Anwendungsfall ab.

Bei threekit gibt es eine gute Gegenüberstellung der beiden Formate. Zusammenfassend heißt es dort:

Auf hoher Ebene ist das FBX-Dateiformat besser als glTF, wenn Sie Ihre Daten in eine Game-Engine wie Unity oder Unreal Engine oder zwischen 3D-Tools wie Clara.io, Maya oder 3DS Max übertragen. Das glTF-Format ist besser als FBX, wenn Sie Ihre 3D-Szenendaten effizient über das Internet übertragen möchten, um sie in einer Remoteanwendung anzuzeigen, beispielsweise für Augmented Reality-Zwecke.

Verwendete Version:
Dieser Artikel bezieht sich auf folgende Versionen:
Blender 4.2
Unity 2022.3.18
glTFast 6.7.1

Der Export aus Blender

Zum Testen exportieren wir ein Modell aus Blender im .gbl Format.

In den Export-Einstellungen sehen wir bereits, was wir alles Includen können. Ich lasse hier alles auf Default, außer, dass ich in diesem Beispiel nur das selektierte Objekt exportieren möchte.

Import in Unity – Der erste Versuch

So, jetzt legen wir die .glb Datei einfach in den Asset Ordner in Unity, wie wir es sonst mit anderen Dateien auch machen. Und … es passiert nichts.

Unity kann mit dem Format nichts anfangen.

Wir benötigen ein Package – glTFast

Nach etwas Suchen findet man ein offizielles Unity Package namens glTFast. Dieses installieren wir, in dem wir im Package Manager den + Button drücken und Add package by name wählen.

Dort geben wir folgendes ein:

com.unity.cloud.gltfast

Dann drücken wir auf Add. Der Installationsprozess beginnt.

Jetzt müsste Unity bereit sein für einen zweiten Import-Versuch.

Import in Unity – Der zweite Versuch

Jetzt kann Unity glb-Dateien verarbeiten. Unsere bereits vorhandene Datei wird automatisch erneut importiert und processed. Das sieht jetzt deutlich besser aus.

Das Mesh ist dabei, die Textur ist dabei und das Material ist dabei. Schauen wir uns im Inspektor einmal die Details an. Dass es hier viel weniger einzustellen gibt als bei FBX, kann gut oder schlecht sein. Das wird sich zeigen.

Am Material erkennen wir, dass das glTFast Package eigene Shader mitbringt und verwendet.

Ziehen wir das Objekt in die Szene, wird es komplett mit Material und Textur dargestellt. WOW, perfekt.

Fazit

WOW. Das ging gut. Der Export aus Blender hat einfach Material und Textur embeded. Beim Import muss man gar nichts machen. Wir bekommen ein Objekt mit Textur und Material, das wir einfach in die Szene ziehen können. Es ist kein separater Import von Texturen nötig, kein manuelles Zuordnen der Texturen zu den Materials. Das funktioniert mit FBX nicht so bequem.

Wie es sich bei komplexen Modellen mit Animationen (z.B. Character) verhält, kann ich noch nicht sagen. Werden wir bei Gelegenheit mal überprüfen.
Für einfache Modelle wird das aber jetzt das Format meiner Wahl.

Ich hoffe wie immer, diese erstbeste Anleitung war hilfreich.


Quellen:

Ähnliche Beiträge

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert