Udostępnij za pośrednictwem


Format DDS — omówienie

Ten temat zawiera informacje na temat natywnego kodera DDS dostępnego za pośrednictwem składnika Windows Imaging (WIC).

Tożsamość kodeka

Poniższa tabela zawiera informacje dotyczące identyfikacji koderów.

Składnik Opis
Nazwy formalne Powierzchnia DirectDraw
Rozszerzenie(-a) nazwy pliku dds
Typ MIME image/vnd.ms-dds

 

W poniższej tabeli wymieniono identyfikatory GUID używane do identyfikowania natywnych składników koderów DDS.

Składnik Przyjazna nazwa GUID (Globalnie Unikalny Identyfikator)
Format pojemnika GUID_ContainerFormatDds 9967cb95-2e85-4ac8-8ca283d7ccd425c9
Dekoder CLSID_WICDdsDecoder 9053699f-a341-429d-9e90ee437cf80c73
Koder CLSID_WICDdsEncoder a61dde94-66ce-4ac1-881b7168058895e

 

Obsługa formatu pikseli

Należy pamiętać, że format DDS obsługuje dowolną prawidłową wartość DXGI_FORMAT. Jednak koder WIC DDS obsługuje tylko dekodowanie i kodowanie plików zawierających następujące formaty:

  • DXGI_FORMAT_BC1_UNORM
  • DXGI_FORMAT_BC2_UNORM
  • DXGI_FORMAT_BC3_UNORM

Kodowanie

Interfejsy API kodowania WIC są zaprojektowane jako niezależne od kodeka, dlatego kodowanie obrazów dla kodeków obsługujących WIC jest zasadniczo takie samo. Aby uzyskać więcej informacji na temat kodowania obrazów przy użyciu interfejsu API WIC, przeczytaj Omówienie kodowania.

Format pliku DDS ma unikatowe wymagania wynikające z obsługi pojęć, takich jak mipmaps i tablice tekstur. Aby w pełni kontrolować kodowanie obrazów DDS, należy użyć interfejsuIWICDsEncoder, aby ustawić parametry kodowania specyficzne dla usługi DDS.

Dekodowanie

Interfejsy API dekodowania WIC zostały zaprojektowane jako niezależne od kodeka, a dekodowanie obrazów przy użyciu kodeków z obsługą WIC jest zasadniczo takie samo. Aby uzyskać więcej informacji na temat dekodowania obrazów, zobacz Omówienie dekodowania. Aby uzyskać więcej informacji na temat używania zdekodowanych danych obrazu, zobacz Bitmap Sources Overview (Omówienie źródeł map bitowych).

Blokuj dostęp do skompresowanych danych

Oprócz obsługi standardowych interfejsów kodera WIC, dekoder DDS zapewnia bezpośredni dostęp do skompresowanych danych natywnych bloków przy użyciu interfejsów specyficznych dla formatu DDS, IWICDdsDecoder i IWICDdsFrameDecode. Aby użyć tych interfejsów, wywołaj metodę QueryInterface z IWICBitmapDecoder oraz IWICBitmapFrameDecodeodpowiednio.