The DirectDraw® Surface (DDS) file format is used to store textures and cubic environment maps, both with and without mipmap levels. This
format can store uncompressed and compressed pixel formats, and is the preferred file format for storing DXTn compressed data.
Microsoft® is the developer of this file format.
You can use DDS files as texture maps.
With Direct3D 9, you can render to the DDS format. (With DX8 or DX9, DDS files can be rendered using the Metal Bump shader, as well.) If your system does not support DX9, you can use DDS files as textures, but you can't render them.
Surface/Volume Format group
DDS supports a variety of output formats, which vary in the number of pixels allocated to the red, green, and blue (RGB) channels,
to the optional alpha channel (transparency), and to possible unused bits. There is also a set of compressed formats.
A8 R8 G8 B8—32 bits per pixel: 8 bits each for the RGB and alpha channels.
A1 R5 G5 B5—16 bits per pixel: 5 bits each for the RGB channels, and one bit for the alpha channel.
A4 R4 G4 B4—16 bits per pixel: 4 bits each for the RGB and alpha channels.
R8 G8 B8—24 bits per pixel: 8 bits each for the RGB channels; no alpha.
R5 G6 B5—16 bits per pixel: 5 bits each for the R and B channels, 6 bits for the G channel; no alpha.
A2 R10 G10 B10—32 bits per pixel: 10 bits each for the RGB channels; 2 bits for the alpha channel.
X8 R8 G8 B8—32 bits per pixel: 8 bits each for the RGB channels; 8 bits unused; no alpha.
X1 R5 G5 B5—16 bits per pixel: 5 bits each for the RGB channels; 1 bit unused; no alpha.
R3 G3 B2—8 bits per pixel: 3 each for the R and G channels, 2 bits for the B channel; no alpha.
A8 R3 G3 B2—16 bits per pixel: 3 each for the R and G channels, 2 bits for the B channel; 8 bits for the alpha channel
X4 R4 G4 B4—16 bits per pixel: 4 each for the RGB channels and 4 unused bits.
A16 B16 G16 R16—64 bits per pixel: 16 bits each for the RGB and alpha channels.
DXT3—Compressed format with 4-bit alpha, no premultiplication.
DXT4—Compressed format with interpolated premultiplied alpha.
DXT5—Compressed format with interpolated alpha but no premultiplication.
Generate Mipmaps—When on, mipmaps are generated for the image. Default=off.
Mipmaps are a set of lower-detail bitmaps. The first is half the size of the original image, the next is half the size of
that, and so on down to a single pixel. (You can think of them as being arranged like a pyramid.) They are used to optimize
display time and reduce aliasing when the texture is to be displayed at less than full size. For example, if your original DDS image is 512 x 512 pixels,
but the area in which it would be displayed is only 100 pixels square, the display device would interpolate between the 128
x 128 mipmap and the 64 x 64 mipmap.