Difference between revisions of "Motion (.MOT) File Format"

From Ōkami Speedrun Wiki
Jump to navigation Jump to search
m
m
Line 74: Line 74:
|-
|-
| 24 || Quantized Curve || Scale Z
| 24 || Quantized Curve || Scale Z
|-
| 50 || Semi-Precision Curve || Position X
|-
| 51 || Semi-Precision Curve || Position Y
|-
| 52 || Semi-Precision Curve || Position Z
|-
| 53 || Semi-Precision Curve || Rotation X
|-
| 54 || Semi-Precision Curve || Rotation Y
|-
| 55 || Semi-Precision Curve || Rotation Z
|-
| 56 || Semi-Precision Curve || Scale X
|-
| 57 || Semi-Precision Curve || Scale Y
|-
| 58 || Semi-Precision Curve || Scale Z
|-
| 80 || Full-Precision Curve || Position X
|-
| 81 || Full-Precision Curve || Position Y
|-
| 82 || Full-Precision Curve || Position Z
|-
| 83 || Full-Precision Curve || Rotation X
|-
| 84 || Full-Precision Curve || Rotation Y
|-
| 85 || Full-Precision Curve || Rotation Z
|-
| 86 || Full-Precision Curve || Scale X
|-
| 87 || Full-Precision Curve || Scale Y
|-
| 88 || Full-Precision Curve || Scale Z
|}
|}

Revision as of 17:46, 7 September 2025

Note: This page pertains to Reverse Engineering of Okami File Formats.

Explanation

This file incorporates curves and/or properties for an given embbed model. Because of that, it's almost always certain that they are contained in a file container (dat). There's instances of mots that controlled properties instead of bones, so it's not always certain of what it animates. A further inspection have to be done.

Mot main header

Offset Type Size Description
0x00 uint32_t 4 File identifier (Magic number).
0x04 uint16_t 2 Animation's frame count.
0x06 uint8_t 1 Animation's property count.
0x07 uint8_t 1 Loop flag, sets if the animation either loops or not (1/0).

on Offset 8, The File gives informations about the curves, i.e: what bone it animates, etc.

Curve Info

Offset Type Size Description
0x00 int8_t 1 Bone index (-1 means it animates the mode's root bone).
0x01 int8_t 1 Curve properties (See below).
0x02 uint16_t 2 Curve keyframe count.

The curve property will define what property of the bone/object it is animating. There's some properties who could not be determined yet. See some already identified values bellow.

Curve Properties (Already identified)

Value Property Family Property
0 Single Pose Position X
1 Single Pose Position Y
2 Single Pose Position Z
3 Single Pose Rotation X
4 Single Pose Rotation Y
5 Single Pose Rotation Z
6 Single Pose Scale X
7 Single Pose Scale Y
8 Single Pose Scale Z
16 Quantized Curve Position X
17 Quantized Curve Position Y
18 Quantized Curve Position Z
19 Quantized Curve Rotation X
20 Quantized Curve Rotation Y
21 Quantized Curve Rotation Z
22 Quantized Curve Scale X
23 Quantized Curve Scale Y
24 Quantized Curve Scale Z
50 Semi-Precision Curve Position X
51 Semi-Precision Curve Position Y
52 Semi-Precision Curve Position Z
53 Semi-Precision Curve Rotation X
54 Semi-Precision Curve Rotation Y
55 Semi-Precision Curve Rotation Z
56 Semi-Precision Curve Scale X
57 Semi-Precision Curve Scale Y
58 Semi-Precision Curve Scale Z
80 Full-Precision Curve Position X
81 Full-Precision Curve Position Y
82 Full-Precision Curve Position Z
83 Full-Precision Curve Rotation X
84 Full-Precision Curve Rotation Y
85 Full-Precision Curve Rotation Z
86 Full-Precision Curve Scale X
87 Full-Precision Curve Scale Y
88 Full-Precision Curve Scale Z