Enter The Matrix DCX: Difference between revisions
imported>Brat |
imported>Brat |
||
| Line 10: | Line 10: | ||
uint32 {4} - null <br> | uint32 {4} - null <br> | ||
char {16} - Filename <font color="purple">(null)</font> <br> | char {16} - Filename <font color="purple">(null)</font> <br> | ||
byte { | float {4} - =1.0<br> | ||
byte {4} - <font color="red"> '' Unknown '' </font> <br> | |||
uint32 {4} - <font color="red"> '' Unknown Count1 '' </font> <br> | |||
byte {4} - <font color="red"> '' Unknown '' </font> <br> | |||
uint32 {4} - Number Of Bones <br> | uint32 {4} - Number Of Bones <br> | ||
byte {4} - <font color="red"> '' Unknown '' </font> <br> | byte {4} - <font color="red"> '' Unknown '' </font> <br> | ||
uint32 {4} - Number Of Textrure Files <br> | uint32 {4} - Number Of Textrure Files <br> | ||
byte { | byte {4} - <font color="red"> '' Unknown '' </font> <br> | ||
uint32 {4} - <font color="red"> '' Unknown Count2 '' </font> <br> | |||
byte {4} - <font color="red"> '' Unknown '' </font> <br> | |||
uint32 {4} - null<br> | |||
uint32 {4} - Number Of Mesh<br> | uint32 {4} - Number Of Mesh<br> | ||
uint32 {4} - =256<br> | uint32 {4} - =256<br> | ||
| Line 25: | Line 31: | ||
<br> | <br> | ||
<br> | <br> | ||
<font color="blue"> ''' // for each textrure file ''' </font> <br> | <font color="blue"> ''' // for each textrure file ''' </font> <br> | ||
: char {32} - Filename <font color="purple">(null)</font> <br> | : char {32} - Filename <font color="purple">(null)</font> <br> | ||
| Line 37: | Line 44: | ||
byte {X} - Texture File Data. One by one for each file.<br> | byte {X} - Texture File Data. One by one for each file.<br> | ||
<br> | <br> | ||
<font color="blue"> ''' // for each bone ''' </font> <br> | <font color="blue"> ''' // for each bone ''' </font> <br> | ||
: char {32} - Bonename <font color="purple">(null)</font> <br> | : char {32} - Bonename <font color="purple">(null)</font> <br> | ||
| Line 43: | Line 51: | ||
: 6 float {4} - <font color="red"> '' Unknown ''</font><br> | : 6 float {4} - <font color="red"> '' Unknown ''</font><br> | ||
<br> | <br> | ||
byte {X} - <font color="red"> '' Unknown data ''</font><br> | |||
byte {X} - <font color="red"> '' Unknown data 1. Size of that block depends on Count1, Count2, Number of Mesh and Number Of Bones. What is it?''</font><br> | |||
<br> | <br> | ||
<font color="blue"> ''' // for each mesh ''' </font> <br> | <font color="blue"> ''' // for each mesh ''' </font> <br> | ||
: char {32} - Meshname <font color="purple">(null)</font> <br> | : char {32} - Meshname <font color="purple">(null)</font> <br> | ||
Revision as of 01:22, 6 October 2007
DCX
- Format Type : Archive
- Endian Order : Little Endian
Format Specifications
uint32 {4} - null
char {16} - Filename (null)
float {4} - =1.0
byte {4} - Unknown
uint32 {4} - Unknown Count1
byte {4} - Unknown
uint32 {4} - Number Of Bones
byte {4} - Unknown
uint32 {4} - Number Of Textrure Files
byte {4} - Unknown
uint32 {4} - Unknown Count2
byte {4} - Unknown
uint32 {4} - null
uint32 {4} - Number Of Mesh
uint32 {4} - =256
byte {8} - Unknown
uint32 {4} - Number Of SubMeshes In Each Mesh. Often: 1 - LowPoly
2 - MiddlePoly 3 - HighPoly Models
uint32 {4} - null
float {4} - Always = 0 except one file SorenTestAgentSmith.dcx = 90.0
uint32 {4} - null
// for each textrure file
- char {32} - Filename (null)
- uint32 {4} - Texture Width
- uint32 {4} - Texture Height
- uint32 {4} - Compression type ( =5h or =105h - DXT5 else DXT1 )
- uint32 {4} - File Size
- uint32 {4} - File ID or Timestamp?
- byte {8} - null
- uint32 {4} - Unknown. Often 0 or CDCDCDCDh. Transparency ?
byte {X} - Texture File Data. One by one for each file.
// for each bone
- char {32} - Bonename (null)
- uint32 {4} - Child bones count?
- 3 uint32 {4} - Unknown
- 6 float {4} - Unknown
byte {X} - Unknown data 1. Size of that block depends on Count1, Count2, Number of Mesh and Number Of Bones. What is it?
// for each mesh
- char {32} - Meshname (null)
- byte {12} - Unknown
- uint32 {4} - Mesh Data Size
byte {X} - Mesh data
MultiEx BMS Script
Not written yet
Notes and Comments
If a filename is too long to fit in the 32-bytes allocated for it, it is cut off at 32 bytes