Skip to main content

Module objects

Module objects 

Source
Expand description

Typed FBX object wrappers aligned with Assimp’s FBXDocument and LazyObject::Get-style dispatch.

§Dispatch (fbx_object_tag / ClassifiedFbxObject)

  • type_name is the FBX object class family (Geometry, Model, Material, …).
  • class_name narrows within the family (Mesh, Camera, Skin, …).
  • Materials, textures, video, and animation types are keyed by type_name only so varied SDK class_name strings still classify.
  • Unknown Geometry / NodeAttribute / Deformer classes become explicit Unknown* variants instead of the generic ClassifiedFbxObject::Unknown.

Each concrete type is a newtype over crate::OwnedObject (or a small struct) with TryFrom<OwnedObject> for narrowing. Prefer ClassifiedFbxObject::try_from when the kind is not known upfront.

Structs§

AnimationCurve
AnimationCurveNode
AnimationLayer
AnimationStack
BlendShape
BlendShapeChannel
Camera
CameraSwitcher
Cluster
FbxTypeMismatch
Returned when TryFrom<OwnedObject> fails for a typed FBX wrapper.
LayeredTexture
Light
LimbNode
LineGeometry
Material
MeshGeometry
Model
Typed wrapper for a scene graph model / transform node (Model::* except unsupported effectors).
NullNode
Null / locator node attribute (NodeAttribute + class Null).
OwnedGlobalSettings
ShapeGeometry
Skin
Texture
Video

Enums§

ClassifiedFbxObject
Success result of classifying an OwnedObject: a concrete wrapper or an explicit unknown bucket.
FbxTryFromReason
Why TryFrom<OwnedObject> failed for a typed FBX wrapper.
LightDecay
LightType
ModelGeometryRef
Borrowed polymorphic Geometry reference for incoming Geometry -> Model OO links.
ModelRotationOrder
ModelTransformInheritance
NodeAttributeRef
Borrowed polymorphic NodeAttribute reference (replacement for inheritance-style base).

Constants§

ANIMATION_CURVE_CLASS_NAME
ANIMATION_CURVE_NODE_CLASS_NAME
ANIMATION_CURVE_NODE_TYPE_NAME
ANIMATION_CURVE_TYPE_NAME
ANIMATION_LAYER_CLASS_NAME
ANIMATION_LAYER_TYPE_NAME
ANIMATION_STACK_CLASS_NAME
ANIMATION_STACK_TYPE_NAME
DEFORMER_BLEND_SHAPE_CHANNEL_CLASS_NAME
DEFORMER_BLEND_SHAPE_CLASS_NAME
DEFORMER_CLUSTER_CLASS_NAME
DEFORMER_SKIN_CLASS_NAME
DEFORMER_TYPE_NAME
GEOMETRY_LINE_CLASS_NAME
GEOMETRY_MESH_CLASS_NAME
GEOMETRY_SHAPE_CLASS_NAME
GEOMETRY_TYPE_NAME
LAYERED_TEXTURE_CLASS_NAME
LAYERED_TEXTURE_TYPE_NAME
MATERIAL_CLASS_NAME
MATERIAL_TYPE_NAME
MODEL_FK_EFFECTOR_CLASS_NAME
MODEL_IK_EFFECTOR_CLASS_NAME
MODEL_TYPE_NAME
NODE_ATTRIBUTE_CAMERA_CLASS_NAME
NODE_ATTRIBUTE_CAMERA_SWITCHER_CLASS_NAME
NODE_ATTRIBUTE_LIGHT_CLASS_NAME
NODE_ATTRIBUTE_LIMB_NODE_CLASS_NAME
NODE_ATTRIBUTE_NULL_CLASS_NAME
NODE_ATTRIBUTE_TYPE_NAME
TEXTURE_CLASS_NAME
TEXTURE_TYPE_NAME
VIDEO_CLASS_NAME
VIDEO_TYPE_NAME

Traits§

AttrExtractor
AttrExtractorExt
AttrExtractorParseExt
Optional parsing of typed token lists on top of AttrExtractor.