File Format:ANM: Difference between revisions
From LMHack
More actions
Created page with "=== Original Author === [https://github.com/KillzXGaming KillzXGaming] === Original Source === https://github.com/KillzXGaming/LM_Research/wiki/ANM === Breakdown === == Header == {| class="wikitable" style="text-align: center;" !width="25%"| Offset !width="25%"| Size !width="25%"| Type !width="25%"| Description |- | -0x00 | 1 | Byte | Version? 1 or 2. |- | -0x01 | 1 | Byte | Loop. |- | -0x02 | 2 | UInt16 | Padding. |- | -0x04 | 4 | UInt32 | Frame Count. |- | -0x08 |..." |
No edit summary |
||
| Line 1: | Line 1: | ||
== Original Author == | |||
[https://github.com/KillzXGaming KillzXGaming] | [https://github.com/KillzXGaming KillzXGaming] | ||
== Original Source == | |||
https://github.com/KillzXGaming/LM_Research/wiki/ANM | https://github.com/KillzXGaming/LM_Research/wiki/ANM | ||
== Breakdown == | |||
== Header == | === Header === | ||
{| class="wikitable" style="text-align: center;" | {| class="wikitable" style="text-align: center;" | ||
| Line 59: | Line 59: | ||
== Node Group == | === Node Group === | ||
To get the amount of these, you must get the count from the .bin file. These are the total used in the scene graph. | To get the amount of these, you must get the count from the .bin file. These are the total used in the scene graph. | ||
| Line 116: | Line 116: | ||
== Track == | === Track === | ||
{| class="wikitable" style="text-align: center;" | {| class="wikitable" style="text-align: center;" | ||
Latest revision as of 21:06, 8 May 2024
Original Author
Original Source
Breakdown
Header
| Offset | Size | Type | Description |
|---|---|---|---|
| -0x00 | 1 | Byte | Version? 1 or 2. |
| -0x01 | 1 | Byte | Loop. |
| -0x02 | 2 | UInt16 | Padding. |
| -0x04 | 4 | UInt32 | Frame Count. |
| -0x08 | 4 | UInt32 | Scale Key Data Offset. |
| -0x0A | 4 | UInt32 | Rotation Key Data Offset. |
| -0x0E | 4 | UInt32 | Translation Key Data Offset. |
| -0x14 | 4 | UInt32 | Node Groups Offset |
To read the keys, get the key information from the node groups first.
Node Group
To get the amount of these, you must get the count from the .bin file. These are the total used in the scene graph.
| Offset | Size | Type | Description |
|---|---|---|---|
| -0x00 | 6 | Track | Scale X. |
| -0x06 | 6 | Track | Scale Y. |
| -0x0C | 6 | Track | Scale Z. |
| -0x12 | 6 | Track | Rotate X. |
| -0x18 | 6 | Track | Rotate Y. |
| -0x24 | 6 | Track | Rotate Z. |
| -0x2A | 6 | Track | Position X. |
| -0x30 | 6 | Track | Position Y. |
| -0x36 | 6 | Track | Position Z. |
Track
| Offset | Size | Type | Description |
|---|---|---|---|
| -0x00 | 2 | UInt16 | Count. |
| -0x02 | 2 | UInt16 | Index. |
| -0x04 | 2 | UInt16 | Flag. |
Key Data
if frame amount is 1
| Offset | Size | Type | Description |
|---|---|---|---|
| -0x00 | 4 | Float | Value. |
else
| Offset | Size | Type | Description |
|---|---|---|---|
| -0x00 | 4 | Float | Frame. |
| -0x04 | 4 | Float | Value. |
| -0x08 | 4 | Float | Slope. |
if track flags = 0x80
| Offset | Size | Type | Description |
|---|---|---|---|
| -0x0A | 4 | Float | Out Slope. |