DDS 形式の概要
このトピックでは、Windows イメージング コンポーネント (WIC) で使用できるネイティブ DDS コーデックについて説明します。
コーデック ID
次の表に、コーデック識別情報を示します。
コンポーネント | 説明 |
---|---|
正式な名前 | DirectDraw Surface |
ファイル名拡張子 | Dds |
MIME の種類 (MIME type) | image/vnd.ms-dds |
次の表は、ネイティブ DDS コーデック コンポーネントを識別するために使用される GUID の一覧です。
コンポーネント | フレンドリ名 | GUID |
---|---|---|
コンテナーの形式 | GUID_ContainerFormatDds | 9967cb95-2e85-4ac8-8ca283d7ccd425c9 |
デコーダー | CLSID_WICDdsDecoder | 9053699f-a341-429d-9e90ee437cf80c73 |
エンコーダー | CLSID_WICDdsEncoder | a61dde94-66ce-4ac1-881b71680588895e |
ピクセル形式のサポート
DDS 形式では、有効な DXGI_FORMAT 値がサポートされていることに注意してください。 ただし、WIC DDS コーデックでは、次の形式を含むファイルのデコードとエンコードのみがサポートされています。
- DXGI_FORMAT_BC1_UNORM
- DXGI_FORMAT_BC2_UNORM
- DXGI_FORMAT_BC3_UNORM
Encoding
WIC エンコード API はコーデックに依存しないように設計されているため、WIC 対応コーデックのイメージ エンコードは基本的に同じです。 WIC API を使用したイメージ エンコードの詳細については、「エンコードの 概要」を参照してください。
DDS ファイル形式には、ミップマップやテクスチャ配列などの概念のサポートから生じる固有の要件があります。 DDS イメージ エンコードを完全に制御するには、 IWICDdsEncoder インターフェイスを使用して DDS 固有のエンコード パラメーターを設定する必要があります。
デコード
WIC デコード API はコーデックに依存しないため、WIC 対応コーデックのイメージ デコードは基本的に同じです。 イメージのデコードの詳細については、「 デコードの概要」を参照してください。 デコードされたイメージ データの使用の詳細については、「 ビットマップ ソースの概要」を参照してください。
圧縮データ アクセスをブロックする
DDS デコーダーは、標準の WIC コーデック インターフェイスをサポートするだけでなく、DDS 固有のインターフェイス、IWICDdsDecoder、および IWICDdsFrameDecode を使用して、ネイティブ ブロック圧縮データに直接アクセスできます。 これらのインターフェイスを使用するには、 それぞれ IWICBitmapDecoder と IWICBitmapFrameDecode から QueryInterface を呼び出します。