DKRDS Model (File Format)

From Wexos's Wiki
Revision as of 20:39, 11 June 2024 by Atlas (talk | contribs)
Jump to navigationJump to search
Under Construction
This article is not finished. Help improve it by adding accurate information or correcting grammar and spelling.

DKRDS Model is the nameless file format used in Diddy Kong Racing DS that stores models and textures.

File Format

The file byte order is always little endian.

Header

The file starts with a header that is 48 bytes long.

Offset Type Description
0x00 Byte[8] Unknown flags.
0x08 Int32 Number of textures.
0x0C Byte[16] Unknown. Padding?
0x1C Int32 Model Data offset.
0x20 Int32 Texture Group offset.
0x24 Int32 Texture Reference Table offset.
0x28 Int32 Unknown. Always the same value as the texture reference table offset?
0x2C Int32 Unknown. Sometimes 0, sometimes the size of the entire file?
0x30 End of header

Model Data

TBD

Texture Group

This section starts with a 4-byte header:

Offset Type Description
0x00 UInt16 Number of textures.
0x02 UInt16 Unknown.
0x04 End of Texture Group header, start of Texture Entries

Texture Entry

After the texture data header there's an entry for each texture. This entry consists of a 20-byte header followed by the texture data. The textures are referenced in the Texture Reference Table using 4-byte UIDs.

Offset Type Description
0x00 Byte[4] Texture UID. Referenced as is in the Texture Reference Table.
0x04 Int32 Unknown.
0x08 Byte Texture format:
  • 1 = A3I5
  • 2 = 4-Color Palette
  • 3 = 16-Color Palette
  • 4 = 256-Color Palette
  • 5 = 4x4-Texel Compressed
  • 6 = A5I3
  • 7 = Direct Color (RGB5551)
0x09 Byte Unknown.
0x0A Byte Unknown.
0x0B Byte Unknown.
0x0C Byte[4] Unknown.
0x10 UInt16[2] Texture dimensions.
0x14 End of Texture Entry header, start of texture data

Texture Reference Table

This section lists each 4-byte texture UID directly, in order.

Tools

The following tools can handle DKRDS Model:

  • (none)