Struct ssbh_lib::formats::skel::Skel[][src]

pub struct Skel {
    pub major_version: u16,
    pub minor_version: u16,
    pub bone_entries: SsbhArray<SkelBoneEntry>,
    pub world_transforms: SsbhArray<Matrix4x4>,
    pub inv_world_transforms: SsbhArray<Matrix4x4>,
    pub transforms: SsbhArray<Matrix4x4>,
    pub inv_transforms: SsbhArray<Matrix4x4>,
}
Expand description

An ordered, hierarchical collection of bones and their associated transforms. Each bone entry has transformation matrices stored at the corresponding locations in the transform arrays. The transforms array can be used to calculate the remaining arrays. Compatible with file version 1.0.

Fields

major_version: u16minor_version: u16bone_entries: SsbhArray<SkelBoneEntry>

A skeleton consisting of an ordered heirarchy of bones.

world_transforms: SsbhArray<Matrix4x4>

The transformation in world space for each bone in bone_entries. The world space transform for a bone is calculated by accumulating the transformations in transforms with the transformation of the bone’s parent recursively.

inv_world_transforms: SsbhArray<Matrix4x4>

The inverses of the matrices in world_transforms.

transforms: SsbhArray<Matrix4x4>

The associated transformation for each of the bones in bone_entries relative to its parent’s world transform. If the bone has no parent, this is equivalent to the corresponding value in world_transforms.

inv_transforms: SsbhArray<Matrix4x4>

The inverses of the matrices in transforms.

Implementations

Tries to read the current SSBH type from path. The entire file is buffered for performance.

Tries to read the current SSBH type from reader. For best performance when opening from a file, use from_file instead.

Trait Implementations

The type of arguments needed to be supplied in order to read this type, usually a tuple. Read more

Read the type from the reader

Read the type from the reader while assuming no arguments have been passed Read more

Read the type from the reader using the specified arguments

The default arguments to be used when using the read shortcut method. Override this for any type that optionally requries arguments Read more

Formats the value using the given formatter. Read more

Deserialize this value from the given Serde deserializer. Read more

Serialize this value into the given Serde serializer. Read more

Writes the byte representation of self to writer and update data_ptr as needed to ensure the next relative offset is correctly calculated.

The offset in bytes between successive elements in an array of this type. This should include any alignment or padding. For most types, this is simply the value of std::mem::size_of. Read more

The alignment of the relative_offset for types stored in a RelPtr64.

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

Performs the conversion.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.

The type returned in the event of a conversion error.

Performs the conversion.