champions-of-luneraria/Assets/Luneraria/Art/Buildings/bastion.export.json
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

602 lines
9.4 KiB
JSON

{
"id": "bastion",
"group": "Buildings",
"source": "assets-source/luneraria/g2/bastion.blend",
"exporter_version": 5,
"blender": "5.2.2 LTS",
"fbx_settings": {
"use_selection": true,
"use_visible": false,
"use_active_collection": false,
"global_scale": 1.0,
"apply_unit_scale": true,
"apply_scale_options": "FBX_SCALE_UNITS",
"axis_forward": "Y",
"axis_up": "Z",
"bake_space_transform": false,
"object_types": [
"ARMATURE",
"EMPTY",
"MESH"
],
"use_mesh_modifiers": true,
"use_mesh_modifiers_render": true,
"mesh_smooth_type": "OFF",
"use_subsurf": false,
"use_mesh_edges": false,
"use_tspace": true,
"use_triangles": false,
"colors_type": "LINEAR",
"prioritize_active_color": true,
"use_custom_props": false,
"add_leaf_bones": false,
"primary_bone_axis": "Y",
"secondary_bone_axis": "X",
"use_armature_deform_only": true,
"armature_nodetype": "NULL",
"bake_anim": true,
"bake_anim_use_all_bones": true,
"bake_anim_use_nla_strips": false,
"bake_anim_use_all_actions": true,
"bake_anim_force_startend_keying": true,
"bake_anim_step": 1.0,
"bake_anim_simplify_factor": 0.0,
"path_mode": "STRIP",
"embed_textures": false,
"batch_mode": "OFF"
},
"checks": [
{
"check": "turn_applied",
"ok": true,
"detail": "[]"
},
{
"check": "units_metric",
"ok": true,
"detail": "METRIC"
},
{
"check": "unit_scale_1",
"ok": true,
"detail": "1.0"
},
{
"check": "no_negative_scale",
"ok": true,
"detail": "{}"
},
{
"check": "object_scale_1",
"ok": true,
"detail": "{}"
},
{
"check": "mesh_names_unique",
"ok": true,
"detail": "['Crystal', 'Debris', 'Lower', 'Pennant', 'Ring', 'Ruin', 'Shard_0', 'Shard_1', 'Shard_2', 'Upper', 'Upper_Damaged']"
},
{
"check": "material_slots_filled",
"ok": true,
"detail": "{}"
},
{
"check": "normals_unit_length",
"ok": true,
"detail": "[]"
},
{
"check": "tangent_prerequisites",
"ok": true,
"detail": "{}"
},
{
"check": "no_blend_shapes",
"ok": true,
"detail": "{}"
},
{
"check": "triangles_match_godot",
"ok": true,
"detail": "9364 fbx / 9364 godot"
},
{
"check": "mesh_names_match_godot",
"ok": true,
"detail": "[]"
},
{
"check": "materials_match_godot",
"ok": true,
"detail": "[]"
},
{
"check": "bounds_match_godot",
"ok": true,
"detail": "largest difference 0.00000 m"
},
{
"check": "no_armature",
"ok": true,
"detail": "[]"
},
{
"check": "roundtrip_mesh_names",
"ok": true,
"detail": "[]"
},
{
"check": "roundtrip_triangles",
"ok": true,
"detail": "9364 / 9364"
},
{
"check": "roundtrip_materials",
"ok": true,
"detail": "[]"
}
],
"source_sha256": "5ac677fe95f3c65364fa4003b9cae694ad58734b157238f196f4d926de655d60",
"removed_modifiers": 0,
"kind": "static",
"fps": 30.0,
"objects": 11,
"meshes": {
"Lower": {
"mesh": "Lower",
"triangles": 658,
"vertices": 368,
"ngons": 0,
"materials": [
"LN_Stone_Dark",
"LN_Stone_Pale",
"LN_Metal_Team",
"LN_Metal_Iron"
],
"uv_layers": [],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
-1.7395,
0.0,
-2.25
],
"max": [
1.7395,
2.6655,
1.6437
]
}
},
"Upper": {
"mesh": "Upper",
"triangles": 3272,
"vertices": 1722,
"ngons": 0,
"materials": [
"LN_Stone_Pale",
"LN_Metal_Team",
"LN_Rune_Team",
"LN_Stone_Dark",
"LN_Metal_Iron",
"LN_Wood"
],
"uv_layers": [
"UVMap"
],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
-1.5347,
2.4409,
-1.5347
],
"max": [
1.5347,
7.1605,
1.5347
]
}
},
"Upper_Damaged": {
"mesh": "Upper_Damaged",
"triangles": 2948,
"vertices": 1554,
"ngons": 0,
"materials": [
"LN_Stone_Pale",
"LN_Metal_Team",
"LN_Rune_Team",
"LN_Stone_Dark",
"LN_Metal_Iron",
"LN_Wood"
],
"uv_layers": [
"UVMap"
],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
-1.5368,
2.3209,
-1.5372
],
"max": [
1.4687,
7.1605,
1.5405
]
}
},
"Debris": {
"mesh": "Debris",
"triangles": 316,
"vertices": 178,
"ngons": 0,
"materials": [
"LN_Stone_Pale",
"LN_Metal_Team"
],
"uv_layers": [],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
-2.1156,
-0.3891,
-1.7064
],
"max": [
1.8813,
0.54,
1.9496
]
}
},
"Crystal": {
"mesh": "Crystal",
"triangles": 24,
"vertices": 14,
"ngons": 0,
"materials": [
"LN_Crystal_Team"
],
"uv_layers": [],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
-0.4934,
5.54,
-0.4411
],
"max": [
0.4885,
7.06,
0.409
]
}
},
"Ring": {
"mesh": "Ring",
"triangles": 640,
"vertices": 320,
"ngons": 0,
"materials": [
"LN_Metal_Team"
],
"uv_layers": [
"UVMap"
],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
-0.865,
6.15,
-0.865
],
"max": [
0.865,
6.25,
0.865
]
}
},
"Shard_0": {
"mesh": "Shard_0",
"triangles": 20,
"vertices": 12,
"ngons": 0,
"materials": [
"LN_Crystal_Team"
],
"uv_layers": [],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
-1.1308,
6.17,
-0.106
],
"max": [
-0.9277,
6.61,
0.1012
]
}
},
"Shard_1": {
"mesh": "Shard_1",
"triangles": 20,
"vertices": 12,
"ngons": 0,
"materials": [
"LN_Crystal_Team"
],
"uv_layers": [],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
0.397,
6.17,
0.7782
],
"max": [
0.601,
6.61,
0.9923
]
}
},
"Shard_2": {
"mesh": "Shard_2",
"triangles": 20,
"vertices": 12,
"ngons": 0,
"materials": [
"LN_Crystal_Team"
],
"uv_layers": [],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
0.3992,
6.17,
-0.9903
],
"max": [
0.6009,
6.61,
-0.779
]
}
},
"Pennant": {
"mesh": "Pennant",
"triangles": 64,
"vertices": 45,
"ngons": 0,
"materials": [
"LN_Cloth_Team"
],
"uv_layers": [
"UVMap"
],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
0.06,
5.65,
-1.46
],
"max": [
0.76,
6.8,
-1.46
]
}
},
"Ruin": {
"mesh": "Ruin",
"triangles": 1382,
"vertices": 770,
"ngons": 0,
"materials": [
"LN_Stone_Dark",
"LN_Stone_Pale",
"LN_Metal_Team",
"LN_Crystal_Team"
],
"uv_layers": [
"UVMap"
],
"color_attributes": [
"Col"
],
"active_color": "Col",
"custom_normals": false,
"normals_unit_length": true,
"shape_keys": 0,
"skinned": false,
"scale": [
1.0,
1.0,
1.0
],
"bounds_unity": {
"min": [
-2.0369,
-0.3691,
-2.5389
],
"max": [
2.9008,
2.6896,
1.9476
]
}
}
},
"armatures": {},
"empties": {},
"bounds_unity": {
"min": [
-2.1156,
-0.3891,
-2.5389
],
"max": [
2.9008,
7.1605,
1.9496
]
},
"clips": [],
"expected_from_godot": {
"triangles": 9364,
"bounds_godot": {
"min": [
-1.7395,
0.0,
-2.25
],
"max": [
1.7395,
7.1605,
1.6437
]
},
"resource_path": "res://assets/luneraria/g2/bastion.glb"
},
"meshes_without_uv": [
"Crystal",
"Debris",
"Lower",
"Shard_0",
"Shard_1",
"Shard_2"
],
"triangles": 9364,
"fbx": "Assets/Luneraria/Art/Buildings/bastion.fbx",
"fbx_bytes": 618812,
"ok": true
}