-
Notifications
You must be signed in to change notification settings - Fork 4
Field File Section 3: Model Loader
Niema Moshiri edited this page May 14, 2019
·
1 revision
The Model Loader contains model and animation information. This wiki is a useful reference for the Model Loader section.
- This is a 4-byte unsigned integer denoting the total length (in bytes) of this section
- This is always just
<NULL><NULL>
(i.e.,0x0 0x0
)
- This is a 2-byte unsigned integer denoting the number of models
- This is a 2-byte unsigned integer denoting the scale (it may not be used)
For each model (see Number of Models):
- This is a 2-byte unsigned integer denoting the size of the model's name string
- This is a variable-length string (see Size of Model Name String) denoting the name of this model
- There do not seem to be any
<NULL>
bytes padding it: its length is exact.
- This is a 2-byte unsigned integer denoting an attribute of this model that has unknown use
- It seems to sometimes be 0 if the model is playable, 1 otherwise.
- This is an 8-byte string denoting this model's HRC file
- It does not seem to be padded with any
<NULL>
bytes: it seems like all HRC filenames are exactly 8 bytes
- This is the string representation of a number (e.g. the number 1234 is represented as the string
"1234"
) - This is a "left-aligned" string: strings shorter than 8 characters (i.e., numbers with fewer than 4 digits) are right-padded with
<NULL>
(i.e.,0x0
)
- This is a 2-byte unsigned integer denoting the number of animations for this model
- This is three 1-byte unsigned integers representing a color (RGB)
- This is three 2-byte signed integers representing coordinates (x, y, z)
- This is three 1-byte unsigned integers representing a color (RGB)
- This is three 2-byte signed integers representing coordinates (x, y, z)
- This is three 1-byte unsigned integers representing a color (RGB)
- This is three 2-byte signed integers representing coordinates (x, y, z)
- This is three 1-byte unsigned integers representing a color (RGB)
For each animation (see Number of Animations):
- This is a 2-byte unsigned integer denoting the size of the animation's name string
- This is a variable-length string (see Size of Animation Name String) denoting the name of this animation
- There do not seem to be any
<NULL>
bytes padding it: its length is exact.
- This is some attribute with unknown use
- It seems like the first byte varies and the second byte is always
0x0
, so perhaps it's an unsigned 2-byte integer?
Niema Moshiri 2019