OBD:CRSA: Difference between revisions
Jump to navigation
Jump to search
m (→Corpses) |
m (design) |
||
Line 1: | Line 1: | ||
{{OBD_File_Header | {{OBD_File_Header | type=CRSA | prev=CONS | next=DOOR | name=Corpse Array | family=Level | align=center}} | ||
The first image shows the header and the beginning of the first element. The second image the end of it. | |||
[[image:crsa_a.gif]] | |||
[[image:crsa_m.gif]] | |||
{{Table}} | |||
{{OBDth}} | |||
{{OBDtr| 0x000 | res_id |FF0000| 01 35 02 00 | 565 | 00565-.CRSA }} | |||
{| | {{OBDtr| 0x004 | lev_id |FFFF00| 01 00 00 06 | 3 | level 3 }} | ||
| | {{OBDtr| 0x008 | char[12] |00FF00| AD DE | dead | unused }} | ||
| | {{OBDtr| 0x014 | int32 |00FFFF| 11 00 00 00 | 17 | array size }} | ||
{{OBDtr| 0x018 | int32 |FF00FF| 11 00 00 00 | 17 | array size again }} | |||
{{OBDtr| 0x01C | int32 |FF8000| 14 00 00 00 | 20 | array capacity }} | |||
{{OBDtrBK}} | |||
| | {{OBDtr2|0x000 | char[160]|FFC8C8| _lvl_3_Intro... | space for notes; probably the name of the source file }} | ||
| | {{OBDtr| 0x0A0 | link |FFFFC8| 01 36 02 00 | 566 | link to 00566-TCTF_lite_1.[[OBD:ONCC|ONCC]] }} | ||
| | {{OBDtr| 0x0A4 | float |C8FFC8| C1 74 66 3F | 0.900219 | transformation matrix of the pelvis, xx term }} | ||
| | {{OBDtr| 0x0A8 | float |C8FFC8| 00 78 3E 3D | 0.046501 | transformation matrix of the pelvis, xy term }} | ||
| | {{OBDtr| 0x0AC | float |C8FFC8| 45 AB DD 3E | 0.432947 | transformation matrix of the pelvis, xz term }} | ||
| | {{OBDtr| 0x0B0 | float |C8FFC8| A6 8B 7D 3D | 0.061901 | transformation matrix of the pelvis, yx term }} | ||
| | {{OBDtr| 0x0B4 | float |C8FFC8| 19 73 7F BF | -0.997850 | transformation matrix of the pelvis, yy term }} | ||
| | {{OBDtr| 0x0B8 | float |C8FFC8| EE 67 B0 BC | 0.021534 | transformation matrix of the pelvis, yz term }} | ||
| | {{OBDtr| 0x0BC | float |C8FFC8| 03 AE DC 3E | 0.431015 | transformation matrix of the pelvis, zx term }} | ||
| | {{OBDtr| 0x0C0 | float |C8FFC8| 82 2C 3D 3D | 0.0461850 | transformation matrix of the pelvis, zy term }} | ||
|- | {{OBDtr| 0x0C4 | float |C8FFC8| 8D B2 66 BF | -0.901162 | transformation matrix of the pelvis, zz term }} | ||
| | {{OBDtr| 0x0C8 | float |C8FFC8| C5 FA E7 41 | 28.997446 | x-position of the pelvis }} | ||
| | {{OBDtr| 0x0CC | float |C8FFC8| 2E 2B CB C1 | -25.396084 | y-position (height) of the pelvis }} | ||
| | {{OBDtr| 0x0D0 | float |C8FFC8| 58 B4 45 C1 | -12.356529 | z-position of the pelvis }} | ||
| | |- | ||
|- | |colspan=6| After the pelvis follows the data (same structure as the light green coloured fields) for the other 18 bodyparts (see [[OBD:TRIA#Bones|TRIA]] file). The end of every element contains the bounding box data (see rows below). | ||
| | {{OBDtr| 0x434 | float |C8FFFF| D4 22 8C 41 | 17.517006 | minimal x-position of the bounding box }} | ||
| | {{OBDtr| 0x438 | float |C8FFFF| 95 50 E9 C1 | -29.164347 | minimal y-position (height) of the bounding box }} | ||
| | {{OBDtr| 0x43C | float |C8FFFF| BC 31 9C C1 | -19.524284 | minimal z-position of the bounding box }} | ||
| | {{OBDtr| 0x440 | float |C8FFFF| 75 E6 14 42 | 37.225056 | maximal x-position of the bounding box }} | ||
|- | {{OBDtr| 0x444 | float |C8FFFF| 2E 20 B1 C1 | -22.140713 | maximal y-position (height) of the bounding box }} | ||
| | {{OBDtr| 0x448 | float |C8FFFF| 07 B1 D3 C0 | -6.615360 | maximal z-position of the bounding box }} | ||
| | |||
|17 | |||
| | |||
|- | |||
| | |||
| | |||
|20 | |||
| | |||
|} | |} | ||
;What's in a bone? | ;What's in a bone? | ||
Line 85: | Line 57: | ||
Reminder : the 2nd coordinate of '''R''' is the height; same for '''x''', '''y''' and '''z'''. | Reminder : the 2nd coordinate of '''R''' is the height; same for '''x''', '''y''' and '''z'''. | ||
{{OBD_File_Footer | type=CRSA | prev=CONS | next=DOOR | name=Corpse Array | family=Level}} | |||
{{OBD_File_Footer|type=CRSA|prev=CONS|next=DOOR|name=Corpse Array}} |
Revision as of 20:17, 17 September 2007
|
The first image shows the header and the beginning of the first element. The second image the end of it.
Offset | Type | Raw Hex | Value | Description | |
---|---|---|---|---|---|
0x000 | res_id | 01 35 02 00 | 565 | 00565-.CRSA | |
0x004 | lev_id | 01 00 00 06 | 3 | level 3 | |
0x008 | char[12] | AD DE | dead | unused | |
0x014 | int32 | 11 00 00 00 | 17 | array size | |
0x018 | int32 | 11 00 00 00 | 17 | array size again | |
0x01C | int32 | 14 00 00 00 | 20 | array capacity | |
First element (black outline) | |||||
0x000 | char[160] | _lvl_3_Intro... | space for notes; probably the name of the source file | ||
0x0A0 | link | 01 36 02 00 | 566 | link to 00566-TCTF_lite_1.ONCC | |
0x0A4 | float | C1 74 66 3F | 0.900219 | transformation matrix of the pelvis, xx term | |
0x0A8 | float | 00 78 3E 3D | 0.046501 | transformation matrix of the pelvis, xy term | |
0x0AC | float | 45 AB DD 3E | 0.432947 | transformation matrix of the pelvis, xz term | |
0x0B0 | float | A6 8B 7D 3D | 0.061901 | transformation matrix of the pelvis, yx term | |
0x0B4 | float | 19 73 7F BF | -0.997850 | transformation matrix of the pelvis, yy term | |
0x0B8 | float | EE 67 B0 BC | 0.021534 | transformation matrix of the pelvis, yz term | |
0x0BC | float | 03 AE DC 3E | 0.431015 | transformation matrix of the pelvis, zx term | |
0x0C0 | float | 82 2C 3D 3D | 0.0461850 | transformation matrix of the pelvis, zy term | |
0x0C4 | float | 8D B2 66 BF | -0.901162 | transformation matrix of the pelvis, zz term | |
0x0C8 | float | C5 FA E7 41 | 28.997446 | x-position of the pelvis | |
0x0CC | float | 2E 2B CB C1 | -25.396084 | y-position (height) of the pelvis | |
0x0D0 | float | 58 B4 45 C1 | -12.356529 | z-position of the pelvis | |
After the pelvis follows the data (same structure as the light green coloured fields) for the other 18 bodyparts (see TRIA file). The end of every element contains the bounding box data (see rows below). | |||||
0x434 | float | D4 22 8C 41 | 17.517006 | minimal x-position of the bounding box | |
0x438 | float | 95 50 E9 C1 | -29.164347 | minimal y-position (height) of the bounding box | |
0x43C | float | BC 31 9C C1 | -19.524284 | minimal z-position of the bounding box | |
0x440 | float | 75 E6 14 42 | 37.225056 | maximal x-position of the bounding box | |
0x444 | float | 2E 20 B1 C1 | -22.140713 | maximal y-position (height) of the bounding box | |
0x448 | float | 07 B1 D3 C0 | -6.615360 | maximal z-position of the bounding box |
- What's in a bone?
- The transformation matrix and the offset.
- The transformation matrix can define rotation, stretching, mirroring etc, in the following way.
- It can be seen as three 3D vectors x, y and z (see table below).
- If a bone mesh has a vertex at (x, y, z) in its native coordinates,
- then the actual position of that vertex in the level will be R + x x + y y + z z
- That's the transformation defined by the matrix and the offset R.
Reminder : the 2nd coordinate of R is the height; same for x, y and z.
ONI BINARY DATA |
---|
CONS << Other file types >> DOOR |
CRSA : Corpse Array |
Level file |