DDS Image

From XentaxWiki
(Redirected from Unreal Texture DDS)
Jump to: navigation, search

DDS

  • Format Type : Image / Texture
  • Endian Order : Little Endian
  • Signature : DDS


Format Specifications

// DDS file format

// little endian

4 bytes (char) - signature // "DDS "

// surface format header
4 bytes (uint32) - header size  // "124"
4 bytes - flags      // DDSD_CAPS, DDSD_PIXELFORMAT, DDSD_WIDTH and DDSD_HEIGHT flags are required
4 bytes (uint32) - height in pixels
4 bytes (uint32) - width in pixels
4 bytes (uint32) - pitch or linear size    // calculated from equation
                                           // see notes below for details
                                           // pitch can be "0"
4 bytes (uint32) - depth of the volume  // can be "0"
4 bytes (uint32) - number of mipmaps
44 bytes - reserved

// pixel format structure (32 bytes)
4 bytes (uint32) - structure size
4 bytes - flags
4 bytes (char) - compression type   // "DXT1", "DXT2", "DXT3", "DXT4", or "DXT5"
4 bytes (uint32) - RGB bit count   // 16, 24, or 32
4 bytes (uint32) - R bit mask
4 bytes (uint32) - G bit mask
4 bytes (uint32) - B bit mask
4 bytes (uint32) - A bit mask


// capabilities structure (16 bytes)
4 bytes (uint32) - caps 1
4 bytes (uint32) - caps 2
4 bytes (uint32) - reserved 1
4 bytes (uint32) - reserved 2


4 bytes (uint32) - reserved


x bytes - image data / main surface data


// additional surfaces (optional)
num_of_surfaces *
{
   x bytes - additional surfaces data
}

MultiEx BMS Script

Not written yet.

Notes and Comments

  • DDS texture can have additional surfaces (mipmaps) which should always be smaller than the main surface.

Pitch calculation

For block-compressed formats, compute the pitch as:
max( 1, ((width+3)/4) ) * block-size
The block-size is 8 bytes for DXT1, BC1 and BC4 formats
but 16 bytes for other block-compressed formats.

For R8G8_B8G8, G8R8_G8B8, legacy UYVY-packed, and legacy YUY2-packed formats:
((width+1) >> 1) * 4

For other formats:
( width * bits-per-pixel + 7 ) / 8

Games

List of games using this file format:

  • 0 A.D. (*.DDS) (PC)
  • Disney Sing It (*.TEX)
  • Rigs of Rods (*.DDS) (PC)
  • Star Stable Online
  • Many more...

Compatible Programs

  • IrfanView
  • GIMP
  • Adobe Photoshop
  • XnView MP
  • Windows Texture Viewer
  • paint.NET
  • DDS File Viewer