DDS
Line 1: | Line 1: | ||
{{grammar}} | {{grammar}} | ||
− | Direct Draw Suface is a file format developed by Microsoft for DirectX SDK. | + | Direct Draw Suface is a file format developed by Microsoft for DirectX SDK. This format is used in many games to store [[texture compression | compressed textures]]. |
Darkplaces engine can load DDS storing the images of the following formats: | Darkplaces engine can load DDS storing the images of the following formats: | ||
Line 40: | Line 40: | ||
* [http://developer.amd.com/tools/compressonator/pages/default.aspx ATI Compressonator] | * [http://developer.amd.com/tools/compressonator/pages/default.aspx ATI Compressonator] | ||
* [http://www.imgtec.com/powervr/insider/powervr-pvrtextool.asp PVRTexTool] (requires registration) | * [http://www.imgtec.com/powervr/insider/powervr-pvrtextool.asp PVRTexTool] (requires registration) | ||
+ | |||
+ | ==Future alternatives== | ||
+ | In 2010 Khronos group introduced [http://www.khronos.org/opengles/sdk/tools/KTX/file_format_spec/ KTX] format (covering OpenGL and OpenGL ES texture formats). This format can be used as a replacement to DDS in future. | ||
==Console variables== | ==Console variables== |
Revision as of 00:06, 30 July 2012
Direct Draw Suface is a file format developed by Microsoft for DirectX SDK. This format is used in many games to store compressed textures.
Darkplaces engine can load DDS storing the images of the following formats:
- BGRA : 32-bit uncompressed image
- DXT1 : 4-bit compressed DXT1 texture
- DXT2 : 8-bit compressed DXT2 texture
- DXT3 : 8-bit compressed DXT3 texture
- DXT4 : 8-bit compressed DXT4 texture
- DXT5 : 8-bit compressed DXT5 texture
In Darkplaces, DDS are not general texture format like TGA or JPEG but an override texture (dds/filename.dds) that get loaded instead of it's base texture (filename.tga), if presented.
All DDS files should be stored under dds/ directory, rest of the path should mimic file path of the base texture:
dds/textures/mausoleum/outerwall1_1 // override textures/mausoleum/outerwall1_1 dds/models/mapobjects/inn/barrel1_1_norm // override models/mapobjects/inn/barrel1_1_norm dds/models/mapobjects/inn/barrel1_1 // override models/mapobjects/inn/barrel1_1
DDS files should have mipmaps pre-generated. If there is no mipmaps generated, it is implied that this texture is not using mipmaps.
DDS for NetRadiant
Unfortunately, NetRadiant can't load DDS images, it always loads base texture instead. This becomes a problem when supplying Radiant with the builded game (which only include DDS, no base textures). In order to avoid missing textures and broken brush texturing, every world texture that gotta be applied on brushes, should have separate radiant-only image (see qer_editorImage).
By a convention, radiant-only image should be stored in gamedir/radiant/path_to_base_texture:
textures/town/wall1_1 { qer_editorImage radiant/textures/town/wall1_1 ... }
Tools
You can use following tools to produce compressed DDS images:
- RwgTex - recommended commandline tool used by Blood Omnicide
- ATI Compressonator
- PVRTexTool (requires registration)
Future alternatives
In 2010 Khronos group introduced KTX format (covering OpenGL and OpenGL ES texture formats). This format can be used as a replacement to DDS in future.