Jump to content

OBD:TRTA: Difference between revisions

885 bytes removed ,  5 April 2021
m
link fix
mNo edit summary
m (link fix)
 
(7 intermediate revisions by 4 users not shown)
Line 1: Line 1:
[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File types]] >> TRTA
{{OBD_File_Header | type=TRTA | prev=TRSC | next=TSFF | name=Totoro Quaternion Body Translation Array | family=Character | align=center}}




<CENTER>[[OBD:TRSC|TRSC]] << [[OBD:File types|Other file types]] >> [[OBD:TSFF|TSFF]]
[[image:trta_a.gif]]
<br><FONT SIZE=5>TRTA : Totoro Quaternion Body Translation Array</FONT>
<BR><FONT SIZE=2>[[OBD:File types/Character|Character file]]</FONT></CENTER>




http://www6.fh-eberswalde.de/user/dkriesch/onistuff/images/trta_a.gif
{{Table}}
{{OBD_Table_Header}}
|- ALIGN=CENTER VALIGN=TOP
{{OBDtr| 0x00 | res_id  |FF0000| 01 62 04 00 | 1122 | 01122-.TRTA }}
{{OBDtr| 0x04 | lev_id  |FFFF00| 01 00 00 06 | 3    | level 3 }}
{{OBDtr| 0x08 | char[22] |00FF00| AD DE...   | dead | unused }}
{{OBDtr| 0x1E | int16    |00FFFF| 13 00      | 19  | array size }}
{{OBDtrBK|First bone offset (black outline)}}
{{OBDtr| 0x00 | float    |FFC8C8| 00 00 00 00 | 0 | x-offset of bone (pelvis) with respect to parent }}
{{OBDtr| 0x04 | float    |FFFFC8| 00 00 00 00 | 0 | y-offset of bone (pelvis) with respect to parent }}
{{OBDtr| 0x08 | float    |C8FFC8| 00 00 00 00 | 0 | z-offset of bone (pelvis) with respect to parent }}
|}




{| BORDER=1 WIDTH=100% CELLPADDING=2 CELLSPACING=0
|- ALIGN=CENTER BGCOLOR="#FFDDBB"
| WIDTH=15% | <B>Hex</B>
| WIDTH=15% | <B>Translation</B>
| WIDTH=70% | <B>Meaning</B>
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#FF0000" | 01 62 04 00
| 1122
| ALIGN=LEFT | 01122-.TRTA
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#FFFF00" | 01 00 00 06
| 3
| ALIGN=LEFT | level 3
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#00FF00" | AD DE
| dead
| ALIGN=LEFT | not used
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#00FFFF" | 13 00
| 19
| ALIGN=LEFT | 19 bone offsets in array (first bone offset is outlined in black)
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#000000"
| COLSPAN=3 | <FONT SIZE=2 COLOR="#FFFFFF">Structure of a bone offset (example : pelvis)</FONT>
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#FFC8C8" | 00 00 00 00
| 0
| ALIGN=LEFT | x-offset of bone (pelvis) with respect to parent
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#FFFFC8" | 00 00 00 00
| 0
| ALIGN=LEFT | y-offset of bone (pelvis) with respect to parent
|- ALIGN=CENTER VALIGN=TOP BGCOLOR="#FFEEDD"
| BGCOLOR="#C8FFC8" | 00 00 00 00
| 0
| ALIGN=LEFT | z-offset of bone (pelvis) with respect to parent
|}
;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 x axis of the character (from right to left) and face upwards.
: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 (yeah, the shoulders are attached to the neck), and ":)" is a smiley :)  
:Viewed from above, you get something like this : "o" is a pivot (yes, the shoulders are attached to the neck), and ":)" is a smiley :)  
  15-o-14-o-13-o-12-o 4-o-3-o-2-o      ^ z
  14-o-13-o-12-o-11-o 3-o-2-o-1-o      ^ z
                   |           |      ^
                   |           |      ^
             :)11-o-10-o-9-o-8-o-1 < < <^< < <
             :)10-o-9-o-8-o-7-o-0 < < <^< < <
                   |           |  x  ^
                   |           |  x  ^
  19-o-18-o-17-o-16-o 7-o-6-o-5-o      ^
  18-o-17-o-16-o-15-o 6-o-5-o-4-o      ^
;XYZ offsets
;XYZ offsets
:The xyz-offsets in the TRIA are offsets (aka "translations") of a ''bone'' relative to its ''parent'' in that system of coordinates (see above).
: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).
:''Maybe'' [[OBD:TRAM/raw0x34#Compression_size_16|overlay TRAMs]] generate extra translations of the bones, too.
;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).
Line 67: Line 40:
: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.
: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.
: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.
<HR>
<CENTER>[[OBD:TRSC|TRSC]] << '''TRTA''' >> [[OBD:TSFF|TSFF]]</CENTER>
<HR>




[[Main Page]] >> [[OBD:Oni Binary Data|Oni Binary Data]] >> [[OBD:File types|File types]] >> TRTA
{{OBD_File_Footer | type=TRTA | prev=TRSC | next=TSFF | name=Totoro Quaternion Body Translation Array | family=Character}}
 
{{OBD}}