DDS_PIXELFORMAT structure

Format de pixel surface.

Syntaxe

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

Membres

dwSize

Type : DWORD

Taille de la structure ; défini sur 32 (octets).

dwFlags

Type : DWORD

Valeurs qui indiquent le type de données dans la surface.

Indicateur Description Valeur
DDPF_ALPHAPIXELS La texture contient des données alpha ; dwRGBAlphaBitMask contient des données valides. 0x1
DDPF_ALPHA Utilisé dans certains fichiers DDS plus anciens pour les données non compressées du canal alpha uniquement (dwRGBBitCount contient le nombre de bits du canal alpha; dwABitMask contient des données valides) 0x2
DDPF_FOURCC La texture contient des données RVB compressées ; dwFourCC contient des données valides. 0x4
DDPF_RGB La texture contient des données RVB non compressées ; dwRGBBitCount et les masques RVB (dwRBitMask, dwGBitMask, dwBBitMask) contiennent des données valides. 0x40
DDPF_YUV Utilisé dans certains fichiers DDS plus anciens pour les données non compressées YUV (dwRGBBitCount contient le nombre de bits YUV ; dwRBitMask contient le masque Y, dwGBitMask contient le masque U, dwBBitMask contient le masque V) 0x200
DDPF_LUMINANCE Utilisé dans certains fichiers DDS plus anciens pour les données non compressées de couleur à canal unique (dwRGBBitCount contient le nombre de bits du canal de luminance ; dwRBitMask contient le masque de canal). Peut être combiné avec DDPF_ALPHAPIXELS pour un fichier DDS à deux canaux. 0x20000

dwFourCC

Type : DWORD

Codes à quatre caractères pour la spécification de formats compressés ou personnalisés. Les valeurs possibles sont : DXT1, DXT2, DXT3, DXT4 ou DXT5. Un fourCC de DX10 indique la préscense de l’en-tête étendu DDS_HEADER_DXT10 , et le membre dxgiFormat de cette structure indique le format réel. Lorsque vous utilisez un code à quatre caractères, dwFlags doit inclure DDPF_FOURCC.

dwRGBBitCount

Type : DWORD

Nombre de bits au format RVB (éventuellement alpha). Valide lorsque dwFlags inclut DDPF_RGB, DDPF_LUMINANCE ou DDPF_YUV.

dwRBitMask

Type : DWORD

Masque rouge (ou luminance ou Y) pour lire les données de couleur. Pour instance, étant donné le format A8R8G8B8, le masque rouge est 0x00ff0000.

dwGBitMask

Type : DWORD

Masque vert (ou U) pour la lecture des données de couleur. Pour instance, étant donné le format A8R8G8B8, le masque vert serait 0x0000ff00.

dwBBitMask

Type : DWORD

Masque bleu (ou V) pour la lecture des données de couleur. Pour instance, étant donné le format A8R8G8B8, le masque bleu serait 0x000000ff.

dwABitMask

Type : DWORD

Masque alpha pour la lecture des données alpha. dwFlags doit inclure DDPF_ALPHAPIXELS ou DDPF_ALPHA. Par instance, étant donné le format A8R8G8B8, le masque alpha serait 0xff000000.

Notes

Pour stocker des formats DXGI tels que des données à virgule flottante, utilisez un dwFlags de DDPF_FOURCC et définissez dwFourCC sur « D », « X », « 1 », « 0 ». Utilisez l’en-tête d’extension DDS_HEADER_DXT10 pour stocker le format DXGI dans le membre dxgiFormat .

Notez qu’il existe des variantes non standard de fichiers DDS où dwFlags a DDPF_FOURCC et la valeur dwFourCC est définie directement sur une valeur d’énumération D3DFORMAT ou DXGI_FORMAT. Il n’est pas possible de lever l’ambiguïté entre les valeurs D3DFORMAT et DXGI_FORMAT à l’aide de ce schéma non standard. L’en-tête d’extension DX10 est donc recommandé à la place.

Spécifications

Condition requise Valeur
En-tête
Dds.h

Voir aussi

Référence pour DDS