champions-of-luneraria/tools/blender/export_fbx.sh
Martin Stickelbroeck 49cb4af407 U2A Blender/FBX Pipeline
Reproduzierbarer Export aus den Blender-Quellen der Godot-Referenz nach FBX,
geprüft auf beiden Seiten; sechs repräsentative Assets vollständig in Unity
verifiziert (normale Einheit g01, Einheit mit Skelett Funkenlanze, Turm
Grenzwacht, Ancient, Schlundkrone, Vegetation/Kartenrequisiten), dazu Bastion,
Kernwacht und Bossgrotte für die Szene.

- tools/blender: Manifest mit Exportregeln je Asset, Exportskript mit Prüfungen
  (Einheiten, Maßstab, Achsen, Vorderseite, Mesh-Namen, Dreiecke, Materialslots,
  Normalen, Tangenten, Vertexfarben, Maße, Root Bone, Bone-Namen, Clips, Blend
  Shapes) gegen die Manifeste der Godot-GLBs, FBX-Rundreise, byteidentische
  Ausgabe (feste Uhrzeit, PYTHONHASHSEED).
- Regeln wie beim GLB-Export: HIGH-RES-Modifikatoren weglassen, logische Namen,
  Skin-Teile zusammenfügen; 180°-Drehung, damit die Vorderseite nach Unitys
  Achsen-Bake auf +Z liegt (Unity = (-x, y, z) der Godot-Koordinaten).
- Unity: Importregeln (Postprocessor), Verifier gegen das Blender-Protokoll,
  Vorschaubilder; URP-Asset, Linear-Farbraum, URP-Settings nach
  Assets/Luneraria/Settings/Rendering.
- Ergebnis: 176/176 Blender-Prüfungen, 128/128 Unity-Prüfungen, Dreiecke gleich
  den Godot-GLBs, Maße auf 0,05 mm.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-09-30 15:41:24 +02:00

11 lines
673 B
Bash

#!/bin/sh
# Blender -> FBX export of the Unity port (U2A): sh tools/blender/export_fbx.sh [id,id,...]
# Without ids every asset of tools/blender/export_manifest.json is exported. Needs Blender 5.2
# (BLENDER, default "blender") and the Godot reference (GODOT_PROJECT, default ../saumwacht-godot).
# PYTHONHASHSEED=0 with --python-use-system-env makes the FBX object ids reproducible.
set -eu
cd "$(dirname "$0")/../.."
BLENDER="${BLENDER:-blender}"
GODOT_PROJECT="${GODOT_PROJECT:-../saumwacht-godot}"
PYTHONHASHSEED=0 "$BLENDER" --background --factory-startup --python-use-system-env \
--python tools/blender/lune_fbx_export.py -- --godot "$GODOT_PROJECT" --ids "${1:-}"