Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
Virtuelle Welten, wo bauen und wohin exportieren?
#6
(24.07.2019, 23:24)Mareta Dagostino schrieb: 1) Konstruieren einer Szene in Blender, exportieren nach Unity oder OpenSim.
...
Nachteile:
- Beim Export Richtung Unity tragen die Meshes keine Texturen. Diese müssen von Hand in Unity den einzelnen Oberflächen wieder zugeordnet werden.

Das muss ich relativieren. Wenn man in Blender Matrialien anlegt und mit Texturen versieht und ein Objekt oder eine Szene aus Blender exportiert z.B. als .fbx oder als .blend, dann ist das Objekt auch nach einem Unity-Import noch texturiert. Es wird jeweils ein Standard Unity-Shader mit der in Blender verknüpften Textur erzeugt und die Oberflächen sind hinterher ganauso texturiert wie in Blender.

Folgende Nachteile verbleiben, und deshalb verwerfe ich diese Methode für mich:
- Es wird nur eine Textur übernommen, die "Albedo" (Unity) bzw. "Diffuse" (OpenSim). Normals und Specular können so nicht übergeben werden.
- Der Shader mit der Textur ist im .fbx gespeichert und kann so ohne weiteres nicht geändert werden. Man kann also nicht nachträglich Normals und Specular ergänzen, ohne das Unity-Prefab manuell aufzubrechen und neu zusammenzubauen (s.u.).
- Jede .fbx Datei wird mit Texturen aufgebläht, statt sie irgendwo zentral zu sammeln. Auch zur Laufzeit würde dann die Szene und die Welt (Grid) unnötig mit vielen Kopien der eigentlich selben Textur belastet!

-----------------

Ansonsten funktioniert der Transfer von Objekten (auch aus mehreren Meshes) wunderbar als .fbx - Datei von Blender nach Unity und umgekehrt. Ein möglicher Workflow Blender=>Unity für mich wäre:
Objekte
1) Objekt in Blender erstellen. Dabei UV-Map erzeugen, ggf. mit provisorischen Materialien um zu sehen, ob's passt.
2) Materialien in Blender aus dem Objekt löschen, sonst blähen sie unnötig die .fbx Datei auf.
3) Ordentliche Namen für jedes Mesh vergeben, so heißt das Zeug hinterher in Unity!
4) Objekt als FBX aus Blender exportieren. Ein solches Objekt kann aus einem oder mehreren Meshes bestehen. Wird Parenting verwendet, dann gibt es später auch in Unity eine Hierarchie ("Rootprim", "Childprims").
Texturen
1) Alle Texturen irgendwie systematisch in Unterordnern von "Assets/Textures" anordnen, also ins Unity-Projekt kopieren.
2) Auf einem der vielen möglichen Wege jeweils ein Material "Standard (Specular Setup)" erzeugen. Dort die passenden Albedo, Normal, Specular Texturen einarbeiten.
3) Alle Materialien in der gleichen Struktur speichern wie die Texturen, sonst sucht man sich den Wolf. Diesmal unter "Assets/Materials" .
Verknüpfung
1) In der Szene die gewünschten Materialien auf die jeweiligen untexturierten Oberflächen ziehen, so wie man es mit Texturen in OpenSim machen kann. (Hier muss man das nicht für Normals und Specular wiederholen, weil das Material bereits fertig vorbereitet ist.)
2) Aus dem dekorierten Objekt ein neues Prefab machen (aus der Scene-Hierarchy in die Project-Hierarchy kopieren).
3) Das untexturierte Prefab aus dem Import kann nun gelöscht werden.
Zitieren


Nachrichten in diesem Thema
RE: Virtuelle Welten, wo bauen und wohin exportieren? - von Mareta Dagostino - 25.07.2019, 23:41

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste