Expand description
FBX document model and typed object layer for asset import.
§Pipeline
- Load —
Document::from_parser(ASCII viafbxscii) orDocument::from_binary_reader(binary viafbxcel). Both fill the sameDocument: header, definitions/templates, per-object element subtrees in the internal arena, and connection maps keyed by FBX object id (u64). - Borrowed access —
Objectwraps aLazyObject+ template +DocumentforObject::properties,Object::attributes, and connection helpers (OO/OP/PP). - Owned row —
OwnedObjectcopies properties, subtreefbxscii::ElementAttributemap, and outgoing connection lists for use without holding aDocument. - Classification —
objects::ClassifiedFbxObject::try_fromdispatchesOwnedObjectbytype_name/class_name(Assimp-style) into mesh, material, animation, etc. - Aggregate —
OwnedDocument::fromwalks all objects, classifies, and fills typedVecs plusOwnedDocument::unknown_objectsfor rows that fail narrowing.
Connection semantics are documented on crate::document::ObjectPropertyConnection and
Object accessor methods.
Re-exports§
pub use objects::AnimationCurve;pub use objects::AnimationCurveNode;pub use objects::AnimationLayer;pub use objects::AnimationStack;pub use objects::BlendShape;pub use objects::BlendShapeChannel;pub use objects::Camera;pub use objects::CameraSwitcher;pub use objects::ClassifiedFbxObject;pub use objects::Cluster;pub use objects::FbxTryFromReason;pub use objects::FbxTypeMismatch;pub use objects::LayeredTexture;pub use objects::Light;pub use objects::LightDecay;pub use objects::LightType;pub use objects::LimbNode;pub use objects::LineGeometry;pub use objects::Material;pub use objects::MeshGeometry;pub use objects::Model;pub use objects::ModelGeometryRef;pub use objects::ModelRotationOrder;pub use objects::ModelTransformInheritance;pub use objects::NodeAttributeRef;pub use objects::NullNode;pub use objects::ShapeGeometry;pub use objects::Skin;pub use objects::Texture;pub use objects::Video;
Modules§
- objects
- Typed FBX object wrappers aligned with Assimp’s
FBXDocumentandLazyObject::Get-style dispatch.
Structs§
- Document
- Global
Settings - Import
Settings - Lazy
Object - Object
- One FBX object id: metadata from
LazyObject, template from definitions, subtree from arena. - Object
Property Connection - Endpoint for
OP/PProws: destination object id and property name on that object. - Objects
- Owned
Document - Fully owned FBX DOM view: header, definitions, globals, connection graph, and typed object rows.
- Owned
Object - Detached FBX object: typed
Propertymap fromProperties70, non-property subtree asElementAttributemap (meshVertices, layer elements, etc.), and outgoing connection edges. - Property
Details