Interface FBXFileLoaderOptions
attachCamerasAndLights?: boolean;
constraints?: "metadata" | "apply";
curves?: "lines" | "skip";
materials?: "auto" | "standard" | "pbr";
normalMapCoordinateSystem?: FBXNormalMapCoordinateSystem;
nurbsSubdivision?: number;
onWarning?: (warning: FBXLoaderWarning) => void;
preset?: "compatible" | "full";
rebaseAnimations?: boolean;
shareGeometry?: boolean;
unitScale?: number | "preserve" | "meters";
}
Properties
Optionalattach Cameras And Lights
Parent cameras and lights to their FBX node so they follow its animation (default false, "full" preset: true). Otherwise they are created at the node's world position and orientation, unparented.
Optionalconstraints
Constraints (aim, parent, position, rotation, scale): "metadata" (default) only records them on the nodes,
"apply" ("full" preset) attaches an FBXConstraintBehavior to each constrained node so it is solved before
every render. IK chains are always metadata only.
Optionalcurves
How curve geometry (Line, NurbsCurve) is imported: skipped (default) or as lines meshes ("full" preset).
Optionalmaterials
Which Babylon material to build.
- "standard" (default, "full" preset: "auto"): always StandardMaterial (PBR parameters are approximated).
- "auto": PBRMaterial for physically based FBX materials (Standard Surface, Arnold, 3ds Max Physical, 3ds Max PBR, glTF, OpenPBR, Stingray PBS) and StandardMaterial for classic Lambert/Phong materials.
- "pbr": always PBRMaterial (Lambert/Phong parameters are converted).
Optionalnormal Map Coordinate System
Source convention for tangent-space normal maps connected through FBX normal-map slots. FBX does not standardize this convention, so the loader defaults to the glTF/USD-style Y-up convention. Set to "y-down" for assets authored with inverted green/Y normal maps.
Optionalnurbs Subdivision
Segments per knot span when tessellating NURBS surfaces. Zero or undefined uses the subdivision stored in the file (usually 4), capped at 16.
Optionalon Warning
Called for every recoverable issue found while loading (unsupported features, malformed data that was
skipped, approximations). The same list is stored on the root node's metadata as fbxDiagnostics.
Optionalpreset
Bundle of defaults for the options that change what the loaded scene looks like.
- "compatible" (default): the behaviour of the loader as first shipped: StandardMaterial for every material, one Babylon geometry per model, curve geometry skipped, constraints recorded as metadata only, clips rebased to start at frame 0, cameras and lights placed in world space.
- "full": everything the loader can do: PBRMaterial for physically based shaders, geometry shared between instances, curves as lines meshes, constraints solved at runtime, authored clip times, cameras and lights parented to their nodes so they animate. An option set explicitly always wins over the preset.
Optionalrebase Animations
Shift every clip so its first keyframe sits at frame 0 (default true). With false ("full" preset) keys keep the times authored in the file, so clips of one file stay aligned with each other and with their declared ranges.
Optionalshare Geometry
Share vertex data between models that reference the same FBX geometry (default false, "full" preset: true). Skinned meshes are never shared.
Optionalunit Scale
Unit conversion applied at the root of the loaded hierarchy.
- "preserve" (default): keep the file's units (1 Babylon unit = 1 FBX unit).
- "meters": scale so that 1 Babylon unit is 1 meter, using the file's UnitScaleFactor.
- a number: centimeters per Babylon unit (100 = meters, 1 = centimeters, 2.54 = inches).
Defines options for the FBX loader.