OBD:TRCM: Difference between revisions

From OniGalore
Jump to navigation Jump to search
m (recently found a bug; angles corrected)
mNo edit summary
 
(2 intermediate revisions by one other user not shown)
Line 23: Line 23:
|}
|}


There are 19 bones per human body.


The index array specifies the hierarchy of the bones (basically a generic tree).


there are 19 bones per human body
The translation array specifies the translation of every bone with respect to its parent.
:Every translation is specified in the respective parent's local frame of coordinates.


when composing a body of them, one at first rotates a particular body part in the order: z, y, x; then translates the bodypart to the vector from the TRTA array, and then applies parent body part's transformation to it
Rotations are also specified in the local frame of every bone's respective parent.
:The rotation is either a quaternion or a triplet of heading/pitch/banking angles.
::In the latter case, "heading" is around x, "pitch" about y, and "banking" about z.




the rotation values are: (took it from OniBrowser and modified some angles)
{{OBD_File_Footer | type=TRCM | prev=TRBS | next=TRGA | name=Totoro Quaternion Body | family=Character}}
 
<code>
<pre>
(PI/2, PI, PI/2),    // pelvis
 
(0, PI, 0),          // left thigh
(0, 0, 0),            // left calf
(0, 0, 0),            // left foot
 
(0, PI, 0),          // right thigh
(0, 0, 0),            // right calf
(0, 0, 0),            // right foot
 
(0, 0, 0),            // mid
(0, 0, 0),            // chest
(0, 0, 0),            // neck
(0, 0, 0),            // head
 
(PI/2, PI/2, PI/2),  // left shoulder
(0, -PI/2, -PI),      // left arm
(0, 0, 0),            // left wrist
(-PI/2, 0, 0),        // left fist
 
(-PI/2, -PI/2, PI/2), // right shoulder
(0, PI/2, -PI),      // right arm
(0, 0, 0),            // right wrist
(PI/2, 0, 0)          // right fist
</pre>
</code>


{{OBD_File_Footer | type=TRCM | prev=TRBS | next=TRGA | name=Totoro Quaternion Body | family=Character}}
{{OBD}}

Latest revision as of 00:30, 18 July 2010

ONI BINARY DATA
TRBS << Other file types >> TRGA
TRCM : Totoro Quaternion Body
switch to XML:TRCM page
Overview @ Oni Stuff
OBD.png


Trcm all.gif


Offset Type Raw Hex Value Description
0x00 res_id 01 0A 04 00 1034 01034-.TRCM
0x04 lev_id 01 00 00 06 3 level 3
0x08 int32 00 00 00 00 0 unused, 0 for most TRCM files, "dead" for the rest
0x0C int16 13 00 19 19 bodyparts
0x0E dead AD DE dead unused
0x10 char[64] Kon002_xlow.mme internal name of this file
0x50 int32 40 A3 9D 0E 0x0E9DA340 unused, overwritten at runtime
0x54 int32 C0 A3 9D 0E 0x0E9DA3C0 unused, overwritten at runtime
0x58 int32 E0 A4 9D 0E 0x0E9DA4E0 unused, overwritten at runtime
0x5C int32 01 0B 04 00 1035 link to 01035-.TRGA
0x60 int32 01 62 04 00 1122 link to 01122-.TRTA
0x64 int32 01 63 04 00 1123 link to 01123-.TRIA
0x68 char[24] AD DE dead unused

There are 19 bones per human body.

The index array specifies the hierarchy of the bones (basically a generic tree).

The translation array specifies the translation of every bone with respect to its parent.

Every translation is specified in the respective parent's local frame of coordinates.

Rotations are also specified in the local frame of every bone's respective parent.

The rotation is either a quaternion or a triplet of heading/pitch/banking angles.
In the latter case, "heading" is around x, "pitch" about y, and "banking" about z.


ONI BINARY DATA
TRBS << Other file types >> TRGA
TRCM : Totoro Quaternion Body
Character file