DDS ファイル形式とは?
.dds ファイル形式(DirectDraw Surface の略)には、DirectX で使用されるラスタ画像が含まれています。標準的な .dds ファイルは、コンピュータゲームやその他のリアルタイム 3D アプリケーション用のテクスチャ、背景、キューブマップ、およびテクスチャマップを保持します。
この形式では、ファイルサイズを削減するために圧縮を使用できますが、これは完全に任意です。.dds は S3 Texture Compression アルゴリズム(S3TC)を使用しており、BC1-BC3 ファミリ(DXT1、DXT3、DXT5 としても知られる)をカバーしています。Direct3D 10 で導入された新しい BC4-BC7 モードは、HDR コンテンツ、法線マップ、および高品質な RGBA データへのサポートを拡張します。.dds ファイルデータは、標準の DirectX ライブラリ関数とコマンドを使用して展開およびレンダリングでき、ブロック圧縮形式は CPU を介さずに GPU によってネイティブにデコードされます。
.dds は、コンピュータゲームなどのリアルタイムレンダリングソフトウェアアプリケーション向けに作成されました。事前圧縮された .dds テクスチャにより、ゲームはアセットをより速くロードし、DirectX 準拠の GPU のメモリ使用量を削減できます。また、この形式は埋め込まれた計算済みのミップマップチェーンをサポートしており、さまざまな表示距離でのレンダリングパフォーマンスを向上させます。
.dds は DirectX 7.0 標準とともに作成されました。新しい DirectX バージョンが登場するたびにさらなる改良が加えられました。DirectX 8.0 ではボリュームテクスチャのサポートが追加され、Direct3D 10 ではテクスチャ配列と DDS_HEADER_DXT10 拡張ブロックが追加され、Direct3D 11 では高品質な RGBA テクスチャ圧縮のために BC7 が拡張されました。すべての .dds ファイルは、バイトオフセット 0 に 4 バイトのマジックシグネチャ DDS (末尾のスペースを含む)で始まります。関連するテクスチャ形式には、クロスプラットフォームのコンテンツパイプライン用の .PNG、.TGA、および .KTX があります。
セキュリティと安全性
リスク: LOWDDS は実行コードを含まないパッシブな画像データであるため、閲覧は安全です。技術的な注意点として、編集時には正しい圧縮形式(例:カラー+アルファには DXT5/BC3 または BC7、法線マップには BC5)で保存し、ミップマップを再生成してください。そうしないと、テクスチャが正しく表示されなかったり、ゲーム内でエラーが発生したりします。また、JPG への変換は法線マップやスペキュラマップを損ないます。ゲームや Mod のテクスチャは著作権で保護されていることが多いため、ライセンスを尊重してください。ダウンロードにアドウェアを同梱するような怪しい «DDS 変換サイト» を避け、ここに挙げた無料ツールを使用してください。
形式の詳細
概要DDS ファイルを開くプログラム
技術的詳細
詳細仕様| コンテナタイプ | ブロック圧縮および非圧縮のピクセルデータの両方をサポートするバイナリラスタテクスチャコンテナ |
| マジックバイト | オフセット 0 に «DDS » (hex 44 44 53 20)、末尾のスペースを含む - すべての有効な .dds ファイルに存在 |
| ヘッダー構造 | 4バイトのマジック + 124バイトの DDS_HEADER。DX10 拡張を使用するファイルは、直後に DDS_HEADER_DXT10 ブロックを追加 |
| ブロック圧縮形式 | BC1 (DXT1), BC2 (DXT3), BC3 (DXT5), BC4, BC5, BC6H (HDR), BC7 (高品質 RGBA) |
| 非圧縮形式 | サポート済み - RGBA8888, A8L8, R16G16B16A16F およびその他の生ピクセルレイアウトを圧縮なしで保存可能 |
| ミップマップサポート | 単一ファイルに埋め込まれた計算済みミップマップチェーン。ミップ数は DDS_HEADER.dwMipMapCount に保存 |
| キューブマップサポート | 1つのファイルにエンコードされた6つのキューブ面テクスチャ。DDS_HEADER 内の DDSCAPS2_CUBEMAP ビットでフラグ立て |
| ボリュームテクスチャ | DirectX 8.0 以降でサポートされる 3D(体積)テクスチャ。スライスはミップレベルごとに順次保存 |
| テクスチャ配列 | 1つのファイルに保存されたテクスチャレイヤの配列。DX10 ヘッダー拡張(Direct3D 10+)を通じて利用可能 |
| GPU 互換性 | ブロック圧縮形式は GPU によってネイティブにデコードされ、CPU による展開なしで直接アップロード可能 |
| HDR サポート | BC6H は、物理ベースレンダリング(PBR)用に半精度浮動小数点(FP16)の HDR 輝度データを保存 |
| MIME タイプ | image/vnd-ms.dds |
| DX10 ヘッダー FourCC | DX10 拡張を持つファイルは、DDS_PIXELFORMAT の dwFourCC フィールドに FourCC トークン «DX10» を保持 |
| 典型的なユースケース | リアルタイム 3D レンダリング:ゲームエンジンのテクスチャ、スカイボックス、法線マップ、ラフネス/メタリック PBR マップ |
| リリース日 | DirectX 7 (1999); modern DX10 header extension added with DirectX 10 (2006) |
| オープンスタンダード | はい · ロイヤリティフリー |
| 仕様書 | learn.microsoft.com |
DDS の変換
コミュニティ Q&A
ユーザーからの質問まだ質問はありません。DDS ファイルについて最初の質問をしてみましょう。