estrutura DDS_PIXELFORMAT

Formato de pixel do Surface.

Sintaxe

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

Membros

dwSize

Tipo: DWORD

Tamanho da estrutura; definido como 32 (bytes).

dwFlags

Tipo: DWORD

Valores que indicam que tipo de dados está na superfície.

Sinalizador Descrição Valor
DDPF_ALPHAPIXELS Textura contém dados alfa; dwRGBAlphaBitMask contém dados válidos. 0x1
DDPF_ALPHA Usado em alguns arquivos DDS mais antigos para o canal alfa apenas dados descompactados (dwRGBBitCount contém o bitcount do canal alfa; dwABitMask contém dados válidos) 0x2
DDPF_FOURCC Textura contém dados RGB compactados; dwFourCC contém dados válidos. 0x4
DDPF_RGB Textura contém dados RGB descompactados; dwRGBBitCount e as máscaras RGB (dwRBitMask, dwGBitMask, dwBBitMask) contêm dados válidos. 0x40
DDPF_YUV Usado em alguns arquivos DDS mais antigos para dados descompactados yuv (dwRGBBitCount contém a contagem de bits YUV; dwRBitMask contém a máscara Y, dwGBitMask contém a máscara U, dwBBitMask contém a máscara V) 0x200
DDPF_LUMINANCE Usado em alguns arquivos DDS mais antigos para dados descompactados de cor de canal único (dwRGBBitCount contém a contagem de bits do canal de luminância; dwRBitMask contém a máscara de canal). Pode ser combinado com DDPF_ALPHAPIXELS para um arquivo DDS de dois canais. 0x20000

dwFourCC

Tipo: DWORD

Códigos de quatro caracteres para especificar formatos compactados ou personalizados. Os valores possíveis incluem: DXT1, DXT2, DXT3, DXT4 ou DXT5. Um FourCC de DX10 indica o prescense do DDS_HEADER_DXT10 cabeçalho estendido e o membro dxgiFormat dessa estrutura indica o formato verdadeiro. Ao usar um código de quatro caracteres, dwFlags deve incluir DDPF_FOURCC.

dwRGBBitCount

Tipo: DWORD

Número de bits em um formato RGB (possivelmente incluindo alfa). Válido quando dwFlags inclui DDPF_RGB, DDPF_LUMINANCE ou DDPF_YUV.

dwRBitMask

Tipo: DWORD

Máscara vermelha (ou luminância ou Y) para ler dados de cor. Por exemplo, dado o formato A8R8G8B8, a máscara vermelha seria 0x00ff0000.

dwGBitMask

Tipo: DWORD

Máscara verde (ou U) para ler dados de cor. Por exemplo, dado o formato A8R8G8B8, a máscara verde seria 0x0000ff00.

dwBBitMask

Tipo: DWORD

Máscara azul (ou V) para ler dados de cor. Por exemplo, dado o formato A8R8G8B8, a máscara azul seria 0x000000ff.

dwABitMask

Tipo: DWORD

Máscara alfa para leitura de dados alfa. dwFlags deve incluir DDPF_ALPHAPIXELS ou DDPF_ALPHA. Por exemplo, dado o formato A8R8G8B8, a máscara alfa seria 0xff000000.

Comentários

Para armazenar formatos DXGI, como dados de ponto flutuante, use um dwFlags de DDPF_FOURCC e defina dwFourCC como 'D','X','1','0'. Use o cabeçalho de extensão DDS_HEADER_DXT10 para armazenar o formato DXGI no membro dxgiFormat .

Observe que há variantes não padrão de arquivos DDS em que dwFlags tem DDPF_FOURCC e o valor dwFourCC é definido diretamente como um valor de enumeração D3DFORMAT ou DXGI_FORMAT. Não é possível desambiguar os valores D3DFORMAT versus DXGI_FORMAT usando esse esquema não padrão, portanto, o cabeçalho de extensão DX10 é recomendado.

Requisitos

Requisito Valor
parâmetro
Dds.h

Confira também

Referência para DDS