Partager via


Formats Surface (Direct3D 9)

Dans Direct3D, toutes les images à deux dimensions (2D) sont représentées par une plage linéaire de mémoire appelée surface. Une surface peut être considérée comme un tableau 2D où chaque élément contient une valeur de couleur représentant une petite section de l’image, appelée pixel. Le niveau de détail d’une image est défini par le nombre de pixels nécessaires pour représenter l’image et le nombre de bits nécessaires pour le spectre des couleurs de l’image. Par exemple, une image de 800 pixels de large de 600 pixels de haut avec 32 bits de couleur pour chaque pixel (écrite en tant que 800x600x32) sera plus détaillée qu’une image de 640 pixels de large de 480 pixels de hauteur avec 16 bits de couleur pour chaque pixel (écrit en tant que 640 x 480 x 16). De même, l’image plus détaillée nécessite une surface plus grande pour stocker les données. Pour une image de 800 x 600 x 32, les dimensions de tableau de la surface sont 800 x 600, et chaque élément contient une valeur 32 bits pour représenter sa couleur.

Toutes les surfaces ont une taille et stockent un nombre spécifique de bits qui représentent la couleur. Les bits qui représentent la couleur sont séparés en éléments de couleur individuels : rouge, vert et bleu. Dans Direct3D, tous les éléments de couleur sont définis par le type énuméré D3DFORMAT. Un format de couleur Direct3D est divisé en nombre d’octets réservés pour chaque couleur. Par exemple, un format de couleur 16 bits dans Direct3D est défini comme D3DFMT_R5G6B5, où 5 bits sont réservés au rouge (R), 6 bits pour le vert (G) et 5 bits pour le bleu (B).

Surfaces Direct3D