Import: FBX mesh & scene hierarchy
Current State
No FBX support — the import pipeline only reads glTF/GLB (engine/vendor/cgltf_wrap.c, engine/assets/GltfLoader.zig). FBX is Autodesk's binary/ASCII format and is still the de facto interchange format across DCC tools (Maya, 3ds Max, Blender export) and asset libraries (many free/commercial model sources ship FBX-only, e.g. the Amazon Lumberyard Bistro).
Goal
First-class FBX import: meshes, scene hierarchy/transforms, materials (best-effort mapping to the engine's metallic-roughness model), and skinning data where present — landing through the same canonical mesh cooker used by glTF (editor/AssetImporter.zig), so downstream systems (submeshes, materials) are shared.
Scope
- FBX parser (binary + ASCII): nodes/hierarchy, meshes (positions, normals, UVs, tangents, vertex colors), materials, embedded/external texture references.
- Map to the same canonical mesh format used by glTF import — depends on multi-submesh/multi-material import (#45 (closed)) since real-world FBX scenes are heavily multi-mesh/multi-material.
- Axis/unit conversion (FBX is commonly Y-up or Z-up depending on exporter, cm vs m).
- Register
.fbxas an importable source asset type inAssetDatabase/AssetImporter.
Acceptance
- A multi-mesh, multi-material FBX scene (e.g. Bistro) imports with all submeshes, materials, and hierarchy intact, on par with the glTF import path.