pub enum MdlNodeData {
Base,
Light(MdlLight),
Emitter(MdlEmitter),
Camera(MdlCamera),
Reference(MdlReference),
Mesh(MdlMesh),
Skin(MdlSkin),
AnimMesh(MdlAnimMesh),
Dangly(MdlDangly),
Aabb(MdlAabb),
Saber(MdlSaber),
}Expand description
Type-specific payload for an MDL node.
Determined at parse time from the node’s super::node_flags bitfield.
Mesh-derived variants (Skin, AnimMesh, Dangly, Aabb, Saber) each contain
an MdlMesh plus type-specific extension fields.
Variants§
Base
Pure hierarchy node with no type-specific data (flags = 0x0001).
Light(MdlLight)
Light node (flags & 0x0002).
Emitter(MdlEmitter)
Emitter node (flags & 0x0004).
Camera(MdlCamera)
Camera node (flags & 0x0008).
Reference(MdlReference)
Reference to an external model (flags & 0x0010).
Mesh(MdlMesh)
Triangle mesh node (flags & 0x0020, no subtype flags).
Skin(MdlSkin)
Skinned mesh with bone weights (flags & 0x0060).
AnimMesh(MdlAnimMesh)
Animated mesh with per-frame vertex sets (flags & 0x00A0).
Dangly(MdlDangly)
Dangly mesh with physics constraints (flags & 0x0120).
Aabb(MdlAabb)
AABB walkmesh tree (flags & 0x0220).
Saber(MdlSaber)
Lightsaber blade mesh (flags & 0x0820).
Implementations§
Source§impl MdlNodeData
impl MdlNodeData
Sourcepub fn flags(&self) -> u32
pub fn flags(&self) -> u32
Returns the binary flags for this node type.
These are the on-disk bitflags written at node offset 0x00.
Derived from the variant rather than stored independently, ensuring
the type system and binary representation stay in sync.
See super::node_flags for the individual flag constants.
Trait Implementations§
Source§impl Clone for MdlNodeData
impl Clone for MdlNodeData
Source§fn clone(&self) -> MdlNodeData
fn clone(&self) -> MdlNodeData
1.0.0 · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
source. Read more