CMDL (Tropical Freeze): Difference between revisions

no edit summary
>Aruki
>Aruki
No edit summary
Line 16: Line 16:


After the [[RFRM Header]], the first section of the file is SKHD in SMDL, and WDHD in WMDL. Following those extra sections, all three formats start with a header.
After the [[RFRM Header]], the first section of the file is SKHD in SMDL, and WDHD in WMDL. Following those extra sections, all three formats start with a header.
=== Skinned Model Header ===
{| class="wikitable"
! Offset
! Type
! Count
! Name
! Notes
|-
| 0x0
| [[Chunk Descriptor (Tropical Freeze)|Chunk Descriptor]]
| 1
| '''SKHD Chunk Descriptor'''
| Data type is <code>SKHD</code>
|-
| 0x18
| u32
| 1
| {{unknown|Unknown}}
|
|-
| 0x1C
| colspan=5 {{unknown|End of Skinned Model Header}}
|}
=== World Model Header ===
{| class="wikitable"
! Type
! Count
! Name
! Notes
|-
| u8
| 1
| {{unknown|Unknown}}
|
|-
| [[#Render Octree|Render Octree]]
| 1
| '''Render Octree'''
|
|-
| u32
| 1
| {{unknown|Unknown AABox Count}}
|
|-
| {{AABox}}
| ''Unknown AABox Count''
| {{unknown|Unknown AABox Array}}
|
|-
| u32
| 1
| {{unknown|Unknown Float Count}}
|
|-
| float
| ''Unknown Float Count''
| {{unknown|Unknown Float Array}}
|
|}
==== Render Octree ====
This seems to be an updated version of the [[AROT (MREA Section)|AROT]] format seen in previous Retro games.
{| class="wikitable"
! Offset
! Type
! Count
! Name
! Notes
|-
| 0x0
| {{FourCC}}
| 1
| '''Magic'''
| Always <code>AROT</code> (Area Octree)
|-
| 0x4
| u32
| 1
| {{unknown}}
| Always 1. Version number?
|-
| 0x8
| u32
| 1
| {{unknown}}
|
|-
| 0xC
| u32
| 1
| {{unknown}}
|
|-
| 0x10
| u32
| 1
| {{unknown}}
|
|-
| 0x14
| {{AABox}}
| 1
| '''Octree Bounding Box'''
| Bounds of the entire octree; matches the bounding box from the main model header.
|-
| 0x2C
| u32
| 1
| {{unknown|Unknown Count A}}
|
|-
| 0x30
| u32
| ''Unknown Count A''
| {{unknown|Unknown Array A}}
|
|-
| {{none}}
| u32
| 1
| {{unknown|Unknown Count B}}
|
|-
| {{none}}
| u8
| ''Unknown Count B''
| {{unknown|Unknown Array B}}
|
|-
| {{none}}
| u32
| 1
| {{unknown|Unknown AABox Count}}
|
|-
| {{none}}
| {{AABox}}
| ''Unknown AABox Count''
| {{unknown|Unknown AABox Array}}
|
|}


=== Model Header ===
=== Model Header ===
Line 215: Line 363:
| ''Unknown Count C''
| ''Unknown Count C''
| {{unknown|Unknown Array C}}
| {{unknown|Unknown Array C}}
|
|}
=== Skinned Model Header ===
{| class="wikitable"
! Offset
! Type
! Count
! Name
! Notes
|-
| 0x0
| [[Chunk Descriptor (Tropical Freeze)|Chunk Descriptor]]
| 1
| '''SKHD Chunk Descriptor'''
| Data type is <code>SKHD</code>
|-
| 0x18
| u32
| 1
| {{unknown|Unknown}}
|
|-
| 0x1C
| colspan=5 {{unknown|End of Skinned Model Header}}
|}
=== World Model Header ===
{| class="wikitable"
! Type
! Count
! Name
! Notes
|-
| u8
| 1
| {{unknown|Unknown}}
|
|-
| [[#Render Octree|Render Octree]]
| 1
| '''Render Octree'''
|
|-
| u32
| 1
| {{unknown|Unknown AABox Count}}
|
|-
| {{AABox}}
| ''Unknown AABox Count''
| {{unknown|Unknown AABox Array}}
|
|-
| u32
| 1
| {{unknown|Unknown Float Count}}
|
|-
| float
| ''Unknown Float Count''
| {{unknown|Unknown Float Array}}
|
|}
==== Render Octree ====
This seems to be an updated version of the [[AROT (MREA Section)|AROT]] format seen in previous Retro games.
{| class="wikitable"
! Offset
! Type
! Count
! Name
! Notes
|-
| 0x0
| {{FourCC}}
| 1
| '''Magic'''
| Always <code>AROT</code> (Area Octree)
|-
| 0x4
| u32
| 1
| {{unknown}}
| Always 1. Version number?
|-
| 0x8
| u32
| 1
| {{unknown}}
|
|-
| 0xC
| u32
| 1
| {{unknown}}
|
|-
| 0x10
| u32
| 1
| {{unknown}}
|
|-
| 0x14
| {{AABox}}
| 1
| '''Octree Bounding Box'''
| Bounds of the entire octree; matches the bounding box from the main model header.
|-
| 0x2C
| u32
| 1
| {{unknown|Unknown Count A}}
|
|-
| 0x30
| u32
| ''Unknown Count A''
| {{unknown|Unknown Array A}}
|
|-
| {{none}}
| u32
| 1
| {{unknown|Unknown Count B}}
|
|-
| {{none}}
| u8
| ''Unknown Count B''
| {{unknown|Unknown Array B}}
|
|-
| {{none}}
| u32
| 1
| {{unknown|Unknown AABox Count}}
|
|-
| {{none}}
| {{AABox}}
| ''Unknown AABox Count''
| {{unknown|Unknown AABox Array}}
|  
|  
|}
|}
Anonymous user