CINF (File Format): Difference between revisions

From Retro Modding Wiki
Jump to navigation Jump to search
>Aruki
No edit summary
imported>Jackoalan
Line 19: Line 19:
| [[#Bone|Bone]]
| [[#Bone|Bone]]
| ''Bone Count''
| ''Bone Count''
| '''Bone Array'''
| '''Bone Table'''
|  
|  
|-
|-
| u32
| u32
| 1
| 1
| '''Bone ID Count'''
| '''Build Order ID Count'''
|  
|  
|-
|-
| u32
| u32
| ''Bone ID Count''
| ''Build Order ID Count''
| '''Bone ID Array'''
| '''Build Order ID Table'''
| The first element of the ID array is the root bone, followed by the rest of the bone IDs in reverse numerical order.
| The first element of the ID table is the root bone, followed by the rest of the bone IDs in reverse numerical order. This table is enumerated in-order to construct a singly-linked hierarchy of bones using [[wikipedia:Left-child right-sibling binary tree|child/sibling convention]].
|-
|-
| u32
| u32
Line 39: Line 39:
| [[#Bone Name|Bone Name]]
| [[#Bone Name|Bone Name]]
| ''Bone Name Count''
| ''Bone Name Count''
| '''Bone Name Array'''
| '''Bone Name Table'''
|  
|  
|-
|-

Revision as of 23:19, 13 April 2016

The CINF format is for skeletons. Skeletons are associated with models and skins through ANCS files.


This file format is almost completely documented
What is the purpose of the bone ID section?


To do:
MP2/3/DKCR differences

Format

Type Count Name Notes
u32 1 Bone Count
Bone Bone Count Bone Table
u32 1 Build Order ID Count
u32 Build Order ID Count Build Order ID Table The first element of the ID table is the root bone, followed by the rest of the bone IDs in reverse numerical order. This table is enumerated in-order to construct a singly-linked hierarchy of bones using child/sibling convention.
u32 1 Bone Name Count
Bone Name Bone Name Count Bone Name Table
End of file

Bone

Offset Type Count Name Notes
0x0 u32 1 Bone ID
0x4 u32 1 Parent Bone ID
0x8 float 3 Position The position is in the skeleton's local space, not in the parent's bone space.
0x14 u32 1 Linked Bone Count
0x18 u32 Linked Bone Count Linked Bone ID Array This array includes both the parent bone ID as well as all children.
End of bone

Bone Name

Type Count Name Notes
string 1 Bone Name
u32 1 Bone ID
End of bone name