Поделиться через


структура DDS_PIXELFORMAT

Формат пикселей Surface.

Синтаксис

struct DDS_PIXELFORMAT {
  DWORD dwSize;
  DWORD dwFlags;
  DWORD dwFourCC;
  DWORD dwRGBBitCount;
  DWORD dwRBitMask;
  DWORD dwGBitMask;
  DWORD dwBBitMask;
  DWORD dwABitMask;
};

Members

dwSize

Тип: DWORD

Размер структуры; Установлено значение 32 (байт).

dwFlags

Тип: DWORD

Значения, указывающие тип данных в поверхности.

Flag Description Ценность
DDPF_ALPHAPIXELS Текстура содержит альфа-данные; dwRGBAlphaBitMask содержит допустимые данные. 0x1
DDPF_ALPHA Используется в некоторых старых файлах DDS для альфа-канала только несжатых данных (dwRGBBitCount содержит бит-канал альфа-канала; dwABitMask содержит допустимые данные). 0x2
DDPF_FOURCC dwFourCC содержит допустимые данные. 0x4
DDPF_RGB Текстура содержит несжатые данные RGB; dwRGBBitCount и маски RGB (dwRBitMask, dwGBitMask, dwBBitMask) содержат допустимые данные. 0x40
DDPF_YUV Используется в некоторых старых DDS-файлах для несжатых данных YUV (dwRGBBitCount содержит число битов YUV; dwRBitMask содержит маску Y, dwGBitMask содержит маску U, dwBBitMask содержит маску V) 0x200
DDPF_LUMINANCE Используется в некоторых старых DDS-файлах для одноканалового цвета несжатых данных (dwRGBBitCount содержит число битов канала света; dwRBitMask содержит маску канала). Можно объединить с DDPF_ALPHAPIXELS для файла DDS двух каналов. 0x20000

dwFourCC

Тип: DWORD

Четырехзначные коды для указания сжатых или пользовательских форматов. Возможные значения: DXT1, DXT2, DXT3, DXT4 или DXT5. Функция FourCC из DX10 указывает на предопределение расширенного заголовка DDS_HEADER_DXT10, а элемент dxgiFormat этой структуры указывает на истинный формат. При использовании четырехзначного кода dwFlags необходимо включить DDPF_FOURCC.

dwRGBBitCount

Тип: DWORD

Количество битов в формате RGB (возможно, включая альфа-формат). Допустимо, если dwFlags включает DDPF_RGB, DDPF_LUMINANCE или DDPF_YUV.

dwRBitMask

Тип: DWORD

Красная маска (или светимость или Y) для чтения цветных данных. Например, учитывая формат A8R8G8B8, красная маска будет 0x00ff0000.

dwGBitMask

Тип: DWORD

Зеленая маска (или U) для чтения цветных данных. Например, учитывая формат A8R8G8B8, зеленая маска будет 0x0000ff00.

dwBBitMask

Тип: DWORD

Синяя маска (или V) для чтения цветных данных. Например, учитывая формат A8R8G8B8, синяя маска будет 0x000000ff.

dwABitMask

Тип: DWORD

Альфа-маска для чтения альфа-данных. DwFlags должен включать DDPF_ALPHAPIXELS или DDPF_ALPHA. Например, учитывая формат A8R8G8B8, альфа-маска будет 0xff000000.

Замечания

Для хранения форматов DXGI, таких как данные с плавающей запятой, используйте dwFlags DDPF_FOURCC и установите для dwFourCC значение "D", "X", "1",'0". Используйте заголовок расширения DDS_HEADER_DXT10 для хранения формата DXGI в элементе dxgiFormat .

Обратите внимание, что существуют не стандартные варианты файлов DDS, в которых dwFlags имеет DDPF_FOURCC, а значение dwFourCC задается непосредственно в значение перечисления D3DFORMAT или DXGI_FORMAT. Не удается отсоединить D3DFORMAT от DXGI_FORMAT значений с помощью этой нестандартной схемы, поэтому вместо этого рекомендуется использовать заголовок расширения DX10.

Требования

Требование Ценность
Header
Dds.h

См. также

Справочник по DDS