Struct ssbh_lib::formats::modl::Modl [−][src]
pub struct Modl { pub major_version: u16, pub minor_version: u16, pub model_file_name: SsbhString, pub skeleton_file_name: SsbhString, pub material_file_names: SsbhArray<SsbhString>, pub animation_file_name: RelPtr64<SsbhString>, pub mesh_file_name: SsbhString8, pub entries: SsbhArray<ModlEntry>, }
Expand description
Defines the mesh, materials, and skeleton used to render a model. Compatible with file version 1.7.
Fields
major_version: u16
minor_version: u16
model_file_name: SsbhString
The name of the model such as “model”.
skeleton_file_name: SsbhString
The name of the associated Skel file such as “model.nusktb”.
material_file_names: SsbhArray<SsbhString>
The names of the associated Matl files. Smash ultimate uses a single file such as “model.numatb”.
animation_file_name: RelPtr64<SsbhString>
The name of the optional associated Anim file such as “model.nuanmb”.
mesh_file_name: SsbhString8
The name of the associated Mesh file such as “model.numshb”.
entries: SsbhArray<ModlEntry>
A collection of material assignments to the MeshObject in the Mesh determined by mesh_file_name.
Implementations
impl Modl
[src]
impl Modl
[src]pub fn from_file<P: AsRef<Path>>(path: P) -> Result<Self, Box<dyn Error>>
[src]
pub fn from_file<P: AsRef<Path>>(path: P) -> Result<Self, Box<dyn Error>>
[src]Tries to read the current SSBH type from path
.
The entire file is buffered for performance.
pub fn read<R: Read + Seek>(reader: &mut R) -> Result<Self, Box<dyn Error>>
[src]
pub fn read<R: Read + Seek>(reader: &mut R) -> Result<Self, Box<dyn Error>>
[src]Tries to read the current SSBH type from reader
.
For best performance when opening from a file, use from_file
instead.
pub fn write<W: Write + Seek>(&self, writer: &mut W) -> Result<()>
[src]
pub fn write_to_file<P: AsRef<Path>>(&self, path: P) -> Result<()>
[src]
Trait Implementations
impl BinRead for Modl
[src]
impl BinRead for Modl
[src]type Args = ()
type Args = ()
The type of arguments needed to be supplied in order to read this type, usually a tuple. Read more
fn read_options<R: Read + Seek>(
__binread_generated_var_reader: &mut R,
__binread_generated_var_options: &ReadOptions,
__binread_generated_var_arguments: Self::Args
) -> BinResult<Self>
[src]
fn read_options<R: Read + Seek>(
__binread_generated_var_reader: &mut R,
__binread_generated_var_options: &ReadOptions,
__binread_generated_var_arguments: Self::Args
) -> BinResult<Self>
[src]Read the type from the reader
fn read<R>(reader: &mut R) -> Result<Self, Error> where
R: Read + Seek,
[src]
fn read<R>(reader: &mut R) -> Result<Self, Error> where
R: Read + Seek,
[src]Read the type from the reader while assuming no arguments have been passed Read more
fn read_args<R>(reader: &mut R, args: Self::Args) -> Result<Self, Error> where
R: Read + Seek,
[src]
fn read_args<R>(reader: &mut R, args: Self::Args) -> Result<Self, Error> where
R: Read + Seek,
[src]Read the type from the reader using the specified arguments
fn after_parse<R>(
&mut self,
&mut R,
&ReadOptions,
Self::Args
) -> Result<(), Error> where
R: Read + Seek,
[src]
&mut self,
&mut R,
&ReadOptions,
Self::Args
) -> Result<(), Error> where
R: Read + Seek,
impl<'de> Deserialize<'de> for Modl
[src]
impl<'de> Deserialize<'de> for Modl
[src]fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]
fn deserialize<__D>(__deserializer: __D) -> Result<Self, __D::Error> where
__D: Deserializer<'de>,
[src]Deserialize this value from the given Serde deserializer. Read more
impl SsbhWrite for Modl
[src]
impl SsbhWrite for Modl
[src]fn write_ssbh<W: Write + Seek>(
&self,
writer: &mut W,
data_ptr: &mut u64
) -> Result<()>
[src]
fn write_ssbh<W: Write + Seek>(
&self,
writer: &mut W,
data_ptr: &mut u64
) -> Result<()>
[src]Writes the byte representation of self
to writer
and update data_ptr
as needed to ensure the next relative offset is correctly calculated.
fn size_in_bytes(&self) -> u64
[src]
fn size_in_bytes(&self) -> u64
[src]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
fn alignment_in_bytes(&self) -> u64
[src]
fn alignment_in_bytes(&self) -> u64
[src]The alignment of the relative_offset for types stored in a RelPtr64.
Auto Trait Implementations
impl RefUnwindSafe for Modl
impl Send for Modl
impl Sync for Modl
impl Unpin for Modl
impl UnwindSafe for Modl
Blanket Implementations
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]pub fn borrow_mut(&mut self) -> &mut T
[src]
pub fn borrow_mut(&mut self) -> &mut T
[src]Mutably borrows from an owned value. Read more
impl<T> DeserializeOwned for T where
T: for<'de> Deserialize<'de>,
[src]
T: for<'de> Deserialize<'de>,