DDS Image: Difference between revisions
Jump to navigation
Jump to search
imported>Ikskoks |
imported>Ikskoks |
(No difference)
| |
Revision as of 09:08, 7 December 2021
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:
- Disney Sing It (*.TEX)
- Star Stable Online
- Many more...
Compatible Programs
- IrfanView
- GIMP
- Adobe Photoshop
- XnView MP
- Windows Texture Viewer
- paint.NET
- DDS File Viewer