DirectDraw Surface (.dds) はマイクロソフトによって開発された、テクスチャやキューブ (環境) マップを格納するために利用されるファイルフォーマットであり、圧縮形式と非圧縮形式の両方に対応している。これは、Microsoft DirectX対応のGPUのほか、プレイステーション3やXboxのような家庭用ゲーム機で利用されるDXTC (S3TC) 圧縮データを格納できるように作られている。
歴史 このフォーマットはDirectX 7.0で導入されたDDS - Windows applications | Microsoft Docs。DirectDraw Surface自体はまた、DirectDrawおよびDirect3Dにおける基本的な画像単位を表す概念でもあったDirectDraw Surfaces - Windows drivers | Microsoft Docs。DirectX 8.0でボリュームテクスチャがサポートされた。
DirectX 10では'DX10'のFourCCDDS_PIXELFORMAT structure - Windows applications | Microsoft DocsおよびDX10拡張ヘッダーDDS_HEADER_DXT10 structure - Windows applications | Microsoft Docsによりフォーマットが拡張され、追加のDXGIフォーマットやテクスチャ配列をサポートするようになった。
元々はDirectXのために設計されたが、OpenGLでも同様にGL_ARB_texture_compression, GL_ARB_texture_compression_bptc拡張によって利用可能である。
DxTex.exe DirectX SDK June 2010まではDDSファイルを閲覧・編集することのできるツールとしてDxTex.exe (DirectX Texture Tool/DirectX Texture Editor) が含まれていたUsing Compressed Textures (Direct3D 9) - Win32 apps | Microsoft Learn。Microsoft Windows SDK 8.0以降はDirectX SDKと統合され、ツール類は含まれなくなったが、DX10拡張ヘッダーをサポートするようにアップデートされたバージョンのソースコード(MITライセンスdxtex/LICENSE at main · walbourn/dxtex · GitHub)が、マイクロソフトのシニアエンジニアであるChuck WalbournによってGitHub上で公開されているDirectX SDK Tools Catalog | Games for Windows and the DirectX SDK blogGitHub - walbourn/dxtex: DirectX Texture Tool (dxtex.exe) is an MFC-based application for viewing, manipulating, and building DDS textures for DirectX applications.。このツールはMFCを利用して実装されている。
脚注
関連項目 Microsoft DirectX Direct3D DirectDraw DXTC