mirror of
https://codeberg.org/icewind/vmdl.git
synced 2026-06-03 16:44:11 +02:00
fix multi mesh models
This commit is contained in:
parent
dda97e9856
commit
3aa5c8751b
8 changed files with 224 additions and 26 deletions
|
|
@ -186,7 +186,7 @@ impl StripGroup {
|
|||
Ok(reader.read_le()?)
|
||||
})
|
||||
.collect::<Result<_>>()?,
|
||||
flags: dbg!(header).flags,
|
||||
flags: header.flags,
|
||||
})
|
||||
}
|
||||
}
|
||||
|
|
@ -204,7 +204,7 @@ impl Strip {
|
|||
Ok(Strip {
|
||||
vertices: header.vertex_indexes(),
|
||||
indices: header.index_indexes(),
|
||||
flags: dbg!(header).flags,
|
||||
flags: header.flags,
|
||||
})
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -36,6 +36,8 @@ pub struct BodyPartHeader {
|
|||
model_offset: i32,
|
||||
}
|
||||
|
||||
static_assertions::const_assert_eq!(size_of::<BodyPartHeader>(), 8);
|
||||
|
||||
impl BodyPartHeader {
|
||||
pub fn model_indexes(&self) -> impl Iterator<Item = usize> {
|
||||
index_range(
|
||||
|
|
@ -52,6 +54,8 @@ pub struct ModelHeader {
|
|||
lod_offset: i32,
|
||||
}
|
||||
|
||||
static_assertions::const_assert_eq!(size_of::<ModelHeader>(), 8);
|
||||
|
||||
impl ModelHeader {
|
||||
pub fn lod_indexes(&self) -> impl Iterator<Item = usize> {
|
||||
index_range(self.lod_offset, self.lod_count, size_of::<ModelLodHeader>())
|
||||
|
|
@ -81,6 +85,8 @@ pub struct MeshHeader {
|
|||
pub flags: MeshFlags,
|
||||
}
|
||||
|
||||
static_assertions::const_assert_eq!(size_of::<MeshHeader>(), 9);
|
||||
|
||||
impl MeshHeader {
|
||||
pub fn strip_group_indexes(&self) -> impl Iterator<Item = usize> {
|
||||
index_range(
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue