Exemple de texture DDS
Pour une texture non compressée, utilisez les indicateurs DDSD_PITCH et DDPF_RGB ; pour une texture compressée, utilisez les indicateurs DDSD_LINEARSIZE et DDPF_FOURCC. Pour une texture mipmapped, utilisez également les indicateurs DDSD_MIPMAPCOUNT, DDSCAPS_MIPMAP et DDSCAPS_COMPLEX, ainsi que le membre mipmap count. Si des mipmaps sont générés, tous les niveaux inférieurs à 1 par 1 sont généralement écrits.
Pour une texture compressée, la taille de chaque image de niveau mipmap est généralement d’un quart de la taille de la précédente, avec un minimum de 8 octets (DXT1) ou 16 (DXT2-5) octets (pour les textures carrées). Utilisez la formule suivante pour calculer la taille de chaque niveau pour une texture non carrée :
max(1, ( (width + 3) / 4 ) ) x max(1, ( (height + 3) / 4 ) ) x 8(DXT1) or 16(DXT2-5)
Ce tableau répertorie la quantité d’espace occupé par chaque couche pour une texture R8G8B8 de 256 x 256, sans compression.
Composants DDS | Nombre d’octets |
---|---|
en-tête | 128 |
Image main 256 par 256 | 196 608 |
Image mipmap 128 par 128 | 49152 |
Image mipmap 64 x 64 | 12288 |
Image mipmap 32 par 32 | 3 072 |
Image mipmap 16 par 16 | 768 |
Image mipmap 8 par 8 | 192 |
Image mipmap 4 par 4 | 48 |
Image mipmap 2 par 2 | 12 |
Image mipmap 1 par 1 | 3 |
Ce tableau répertorie la quantité d’espace occupé par chaque couche pour la même texture à l’aide de la compression (DXT1).
Composants DDS | Nombre d’octets |
---|---|
en-tête | 128 |
Image main 256 x 64 | 8 192 |
Image mipmap 128 par 32 | 2 048 |
Image mipmap 64 x 16 | 512 |
Image mipmap 32 par 8 | 128 |
Image mipmap 16 x 4 | 32 |
Image mipmap 8 par 2 | 16 |
Image mipmap 4 par 1 | 8 |
Image mipmap 2 par 1 | 8 |
Image mipmap 1 par 1 | 8 |
Ce tableau répertorie la quantité d’espace occupé par chaque couche pour la même texture à l’aide d’un format de compression DXGI (dans ce cas BC3_UNORM) qui nécessite donc l’en-tête étendu :
Composants DDS | Nombre d’octets |
---|---|
en-tête (FourCC défini sur « DX10 ») | 128 |
en-tête étendu (format DXGI défini sur DXGI_FORMAT_BC3_UNORM) | 20 |
Image main 256 x 64 | 16384 |
Image mipmap 128 par 32 | 4096 |
Image mipmap 64 x 16 | 1 024 |
Image mipmap 32 par 8 | 256 |
Image mipmap 16 x 4 | 64 |
Image mipmap 8 par 2 | 32 |
Image mipmap 4 par 1 | 16 |
Image mipmap 2 par 1 | 16 |
Image mipmap 1 par 1 | 16 |
Rubriques connexes
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour