OBD:TRTA: Difference between revisions
Jump to navigation
Jump to search
mNo edit summary |
m (link fix) |
||
(3 intermediate revisions by one other user not shown) | |||
Line 21: | Line 21: | ||
;Skeleton | ;Skeleton | ||
:The hierarchy of the bones (parents, children, siblings) is defined in the [[OBD:TRIA|TRIA]] file (linked to from the same [[OBD:TRCM|TRCM]] file as the TRTA). | :The hierarchy of the bones (parents, children, siblings) is defined in the [[OBD:TRIA|TRIA]] file (linked to from the same [[OBD:TRCM|TRCM]] file as the TRTA). | ||
:If the (0°, 0°, 0°) orientation is set for every bone, then all the bones point along the | :If the (0°, 0°, 0°) orientation is set for every bone, then all the bones point along the X axis of the character (from right to left) and face upwards. | ||
:Viewed from above, you get something like this : "o" is a pivot ( | :Viewed from above, you get something like this : "o" is a pivot (yes, the shoulders are attached to the neck), and ":)" is a smiley :) | ||
14-o-13-o-12-o-11-o 3-o-2-o-1-o ^ z | |||
| | | | ^ | ||
:) | :)10-o-9-o-8-o-7-o-0 < < <^< < < | ||
| | | | x ^ | ||
18-o-17-o-16-o-15-o 6-o-5-o-4-o ^ | |||
;XYZ offsets | ;XYZ offsets | ||
:The | :The XYZ-offsets in the TRTA are offsets (aka "translations") of a ''bone'' relative to its ''parent'' in that system of coordinates (see above). | ||
:Thus they effectively specify the relative positions of the joints. | :Thus they effectively specify the relative positions of the joints. | ||
: | :The different TRTA occurring in Oni are detailed [[OBD_talk:TRTA|HERE]]. | ||
;Pelvis | ;Pelvis | ||
:Pelvis is further translated with respect to the root bone by the [[OBD:TRAM/raw0x0C|height track]] of [[OBD:TRAM|TRAM]] | :Pelvis is further translated with respect to the root bone by the [[OBD:TRAM/raw0x0C|height track]] of [[OBD:TRAM|TRAM]] | ||
:The root bone is translated by TRAM as well as by the physics engine (jumps, blasts). | :The root bone is translated by TRAM as well as by the physics engine (jumps, blasts). | ||
;Relevant offsets | ;Relevant offsets | ||
:You may notice that X and Y offset for thighs and shoulders is very small (it's the left/right i.e. Z that matters there). | :You may notice that X and Y offset for thighs and shoulders is very small (it's the left/right i.e. Z that matters there). |
Latest revision as of 13:20, 5 April 2021
|
Offset | Type | Raw Hex | Value | Description |
---|---|---|---|---|
0x00 | res_id | 01 62 04 00 | 1122 | 01122-.TRTA |
0x04 | lev_id | 01 00 00 06 | 3 | level 3 |
0x08 | char[22] | AD DE... | dead | unused |
0x1E | int16 | 13 00 | 19 | array size |
First bone offset (black outline) | ||||
0x00 | float | 00 00 00 00 | 0 | x-offset of bone (pelvis) with respect to parent |
0x04 | float | 00 00 00 00 | 0 | y-offset of bone (pelvis) with respect to parent |
0x08 | float | 00 00 00 00 | 0 | z-offset of bone (pelvis) with respect to parent |
- Skeleton
- The hierarchy of the bones (parents, children, siblings) is defined in the TRIA file (linked to from the same TRCM file as the TRTA).
- If the (0°, 0°, 0°) orientation is set for every bone, then all the bones point along the X axis of the character (from right to left) and face upwards.
- Viewed from above, you get something like this : "o" is a pivot (yes, the shoulders are attached to the neck), and ":)" is a smiley :)
14-o-13-o-12-o-11-o 3-o-2-o-1-o ^ z | | ^ :)10-o-9-o-8-o-7-o-0 < < <^< < < | | x ^ 18-o-17-o-16-o-15-o 6-o-5-o-4-o ^
- XYZ offsets
- The XYZ-offsets in the TRTA are offsets (aka "translations") of a bone relative to its parent in that system of coordinates (see above).
- Thus they effectively specify the relative positions of the joints.
- The different TRTA occurring in Oni are detailed HERE.
- Pelvis
- Pelvis is further translated with respect to the root bone by the height track of TRAM
- The root bone is translated by TRAM as well as by the physics engine (jumps, blasts).
- Relevant offsets
- You may notice that X and Y offset for thighs and shoulders is very small (it's the left/right i.e. Z that matters there).
- For all the other bones, the offset is essentially along X (i.e. along the main axis of the bone meshes). Y and Z offsets are very small.
- So X/Y offsets of shoulders and thighs can basically be set to zero, as well as Y/Z offsets of all the other bones.
- A skeleton is primarily defined by the Z offsets of shoulders and thighs (broad/narrow shoulders and hips), and by the X offset (effectively, the length) of all the other bones.
ONI BINARY DATA |
---|
TRSC << Other file types >> TSFF |
TRTA : Totoro Quaternion Body Translation Array |
Character file |