Esempio di trama del volume DDS
Per una trama del volume, usare i flag DDSCAPS_COMPLEX, DDSCAPS2_VOLUMEe DDSD_DEPTHe impostare dwDepth. Una trama di volume è un'estensione di una trama standard per Direct3D 9; una trama di volume può essere definita con o senza mipmap.
Per i volumi senza mipmap, ogni sezione di profondità viene scritta nel file in ordine. Se sono incluse mipmap, tutte le sezioni di profondità per un determinato livello mipmap vengono scritte insieme, con ogni livello contenente metà di sezioni del livello precedente con un minimo di 1.
Ad esempio, una mappa del volume da 64 a 64 by-4 usando un formato pixel di R8G8B8 (3 byte per pixel) con tutti i livelli mipmap conterrà quanto segue:
Componenti DDS | # Byte |
---|---|
intestazione | 128 byte |
64-by-64 sezione 1 di 4 immagine principale. | 12288 byte |
64-by-64 sezione 2 di 4 immagine principale. | 12288 byte |
64-by-64 sezione 3 di 4 immagine principale. | 12288 byte |
64-by-64 sezione 4 di 4 immagine principale. | 12288 byte |
32 per 32 sezione 1 di 2 immagine mipmap. | 3072 byte |
32-by-32 sezione 2 di 2 immagine mipmap. | 3072 byte |
16 per 16 sezione 1 di 1 immagine mipmap. | 768 byte |
8 per 8 sezione 1 di 1 immagine mipmap. | 192 byte |
4 per 4 sezione 1 di 1 immagine mipmap. | 48 byte |
2 per 2 sezione 1 di 1 immagine mipmap. | 12 byte |
1 per 1 sezione 1 di 1 immagine mipmap. | 3 byte |
Si noti che il livello mipmap più piccolo è solo di 3 byte perché il conteggio bit è 24 e non esiste alcuna compressione aggiunta a questo livello.
Il supporto per le trame dei volumi è stato aggiunto in DirectX 8.
Argomenti correlati
-
Guida alla programmazione di per DDS