DKRDS Track (File Format): Difference between revisions
(Created page with "{{under-construction}} '''DKRDS Track''' is the nameless file format used in ''[https://en.wikipedia.org/wiki/Diddy_Kong_Racing_DS Diddy Kong Racing DS]'' that stores the tracks' section models, collision and textures. Its type identifier in assets.bin is '''0x9A'''. = File Format = The file byte order is always little endian. == Header == The file starts with a header that is 56 bytes long. {|class=wikitable ! Offset !! Type !! Description |- | 0x00 || Int32 || '...") |
m (→Texture Group) |
||
Line 128: | Line 128: | ||
== Texture Group == | == Texture Group == | ||
See '''[[DKRDS Texture]]'''. | See '''[[DKRDS Texture Group]]'''. | ||
== Unknown Section 3 == | == Unknown Section 3 == |
Revision as of 12:34, 22 June 2024
DKRDS Track is the nameless file format used in Diddy Kong Racing DS that stores the tracks' section models, collision and textures. Its type identifier in assets.bin is 0x9A.
File Format
The file byte order is always little endian.
Header
The file starts with a header that is 56 bytes long.
Offset | Type | Description |
---|---|---|
0x00 | Int32 | Number of sections (N). |
0x04 | Int32 | Track Section Group offset. |
0x08 | Int32 | Unknown Section 1 offset. |
0x0C | Byte[4] | Unknown. Always 0xCCCCCCCC. |
0x10 | Int32 | Unknown Section 2 offset. |
0x14 | Int32 | Unknown Section 2 data type:
|
0x18 | Int32 | Number of textures. |
0x1C | Int32 | Texture Group offset. |
0x20 | Int32 | Unknown Section 3 offset. |
0x24 | Int32 | Wish Race Unknown Section entry count. |
0x28 | Int32 | Wish Race Unknown Section offset. |
0x2C | Byte[4] | Unknown. Seems to be some kind of flags. |
0x30 | Int32 | Unknown. |
0x34 | Int32 | File size. |
0x38 | End of header |
Track Section Group
This group starts with a list of N offsets.
Offset | Type | Description |
---|---|---|
0x00 | Int32[N] | Track Section Entry offsets. Relative to the start of this group. |
Track Section Entry
Every section entry defines model and collision data. The entry starts with a 32-byte header.
Offset | Type | Description |
---|---|---|
0x00 | Byte | Unknown. |
0x01 | Byte | Unknown. Always 5? |
0x02 | UInt16 | Unknown. |
0x04 | UInt16 | Number of entries in Track Section Collision (1E). |
0x06 | UInt16 | Number of vertices in Track Section Vertex Data (2E). |
0x08 | UInt16 | Number of entries in Track Section UV Data (3E). |
0x0A | UInt16 | Number of colors in Track Section Color Data (4E). |
0x0C | Int32 | Unknown. |
0x10 | Int32 | Track Section Unknown Data 1 offset. |
0x14 | Int32 | Track Section Vertex Data offset. |
0x18 | Int32 | Track Section Unknown Data 2 offset. |
0x1C | Int32 | Track Section Color Data offset. |
0x38 | End of header, start of Track Section Data |
Track Section Data
This data starts with an unknown size header and some data, followed by the model and collision data referenced by the previous header's offsets.
Track Section Collision Data
48-byte data per entry 1E. TBD
Track Section Vertex Data
Vertex data is stored as 6-byte groups per entry 2E.
Offset | Type | Description |
---|---|---|
0x00 | Int16[3][2E] | Vertex XYZ position. |
Track Section UV Data
UV data is stored as 4-byte groups per entry 3E.
Offset | Type | Description |
---|---|---|
0x00 | Int16[2][3E] | Vertex UV position. |
Track Section Color Data
Color data is stored as 2-byte groups per entry 4E.
Offset | Type | Description |
---|---|---|
0x00 | UInt16[4E] | RGBA5551 color. |
Unknown Section 1
TBD
Unknown Section 2
TBD
Texture Group
See DKRDS Texture Group.
Unknown Section 3
TBD
Wish Race Unknown Section
This section is only used for the Wish Race tracks. TBD
Tools
The following tools can handle DKRDS Track:
- (none)