Compressione del blocco trama in Direct3D 11

Il supporto di Compressione blocchi (BC) per le trame è stato esteso in Direct3D 11 per includere gli algoritmi BC6H e BC7. BC6H supporta dati di origine colore a intervalli dinamici elevati e BC7 offre una compressione di qualità superiore alla media con meno artefatti per i dati di origine RGB standard.

Per informazioni più specifiche sul supporto dell'algoritmo di compressione a blocchi prima di Direct3D 11, incluso il supporto per i formati BC1-BC5, vedere Compressione a blocchi (Direct3D 10).

Nota sui formati di file: I formati di compressione della trama BC6H e BC7 usano il formato di file DDS per archiviare i dati della trama compressi. Per altre informazioni, vedere La Guida alla programmazione per DDS per informazioni dettagliate.

Blocchi formati di compressione supportati in Direct3D 11

Dati di origine Risoluzione minima di compressione dei dati richiesta Formato consigliato Livello minimo di funzionalità supportato
Colore a tre canali con canale alfa Tre canali di colore (5 bit:6 bit:5 bit), con 0 o 1 bit di alfa BC1 Direct3D 9.1
Colore a tre canali con canale alfa Tre canali di colore (5 bit:6 bit:5 bit), con 4 bit di alfa RB2 Direct3D 9.1
Colore a tre canali con canale alfa Tre canali di colore (5 bit:6 bit:5 bit) con 8 bit di alfa BC3 Direct3D 9.1
Colore a un canale Un canale di colore (8 bit) BC4 Direct3D 10
Colore a due canali Due canali di colore (8 bit:8 bit) BC5 Direct3D 10
Colore hdr (high dynamic range) a tre canali Tre canali di colore (16 bit:16 bits:16 bit) in "mezzo" virgola mobile* BC6H Direct3D 11
Colore a tre canali, canale alfa facoltativo Tre canali di colore (da 4 a 7 bit per canale) con 0 a 8 bit di alfa BC7 Direct3D 11

*"Mezzo" a virgola mobile è un valore a 16 bit costituito da un bit di segno facoltativo, un esponente con pregiudizi a 5 bit e un mantissa a 10 o 11 bit.

Formati BC1, BC2 e B3

I formati BC1, BC2 e BC3 sono equivalenti ai formati di compressione della trama DIRECT3D 9 DXTn e sono uguali ai formati di compressione direct3D 10 BC1, BC2 e BC3 corrispondenti. Il supporto per questi tre formati è richiesto da tutti i livelli di funzionalità (D3D_FEATURE_LEVEL_9_1, D3D_FEATURE_LEVEL_9_2, D3D_FEATURE_LEVEL_9_3, D3D_FEATURE_LEVEL_10_0, D3D_FEATURE_LEVEL_10_1 e D3D_FEATURE_LEVEL_11_0).

Formato di compressione a blocchi Formato DXGI Formato equivalente Direct3D 9 Byte per blocco pixel 4x4
BC1 DXGI_FORMAT_BC1_UNORM, DXGI_FORMAT_BC1_UNORM_SRGB, DXGI_FORMAT_BC1_TYPELESS D3DFMT_DXT1, FourCC="DXT1" 8
RB2 DXGI_FORMAT_BC2_UNORM, DXGI_FORMAT_BC2_UNORM_SRGB, DXGI_FORMAT_BC2_TYPELESS D3DFMT_DXT2*, FourCC="DXT2", D3DFMT_DXT3, FourCC="DXT3" 16
BC3 DXGI_FORMAT_BC3_UNORM, DXGI_FORMAT_BC3_UNORM_SRGB, DXGI_FORMAT_BC3_TYPELESS D3DFMT_DXT4*, FourCC="DXT4", D3DFMT_DXT5, FourCC="DXT5" 16

*Questi schemi di compressione (DXT2 e DXT4) non fanno alcuna distinzione tra i formati alfa pre-moltiplicati Direct3D 9 e i formati alfa standard. Questa distinzione deve essere gestita dagli shader programmabili in fase di rendering.

Formati BC4 e BC5

Formato di compressione a blocchi Formato DXGI Formato equivalente Direct3D 9 Byte per blocco pixel 4x4
BC4 DXGI_FORMAT_BC4_UNORM, DXGI_FORMAT_BC4_SNORM, DXGI_FORMAT_BC4_TYPELESS FourCC="ATI1" 8
BC5 DXGI_FORMAT_BC5_UNORM, DXGI_FORMAT_BC5_SNORM, DXGI_FORMAT_BC5_TYPELESS FourCC="ATI2" 16

Formato BC6H

Per informazioni più dettagliate su questo formato, vedere la documentazione del formato BC6H .

Formato di compressione a blocchi Formato DXGI Formato equivalente Direct3D 9 Byte per blocco pixel 4x4
BC6H DXGI_FORMAT_BC6H_UF16, DXGI_FORMAT_BC6H_SF16, DXGI_FORMAT_BC6H_TYPELESS N/D 16

Il formato BC6H può selezionare diverse modalità di codifica per ogni blocco di pixel 4x4. Sono disponibili un totale di 14 diverse modalità di codifica, ognuna con compromessi leggermente diversi nella qualità visiva risultante della trama visualizzata. La scelta delle modalità consente la decodifica rapida dall'hardware con il livello di qualità selezionato o adattato in base al contenuto di origine, ma aumenta notevolmente la complessità dello spazio di ricerca.

Formato BC7

Per informazioni più dettagliate su questo formato, vedere la documentazione del formato BC7 .

Formato di compressione a blocchi Formato DXGI Formato equivalente Direct3D 9 Byte per blocco pixel 4x4
BC7 DXGI_FORMAT_BC7_UNORM, DXGI_FORMAT_BC7_UNORM_SRGB, DXGI_FORMAT_BC7_TYPELESS N/D 16

Il formato BC7 può selezionare diverse modalità di codifica per ogni blocco di pixel 4x4. Sono disponibili un totale di 8 diverse modalità di codifica, ognuna con compromessi leggermente diversi nella qualità visiva risultante della trama visualizzata. La scelta delle modalità consente la decodifica rapida dall'hardware con il livello di qualità selezionato o adattato in base al contenuto di origine, ma aumenta notevolmente la complessità dello spazio di ricerca.

Contenuto della sezione

Argomento Descrizione
Formato BC6H
Il formato BC6H è un formato di compressione trama progettato per supportare spazi di colore HDR (High Dynamic Range) nei dati di origine.
Formato BC7
Il formato BC7 è un formato di compressione trama usato per la compressione di alta qualità dei dati RGB e RGBA.
Riferimento alla modalità formato BC7
Questa documentazione contiene un elenco delle 8 modalità di blocco e delle allocazioni di bit per i blocchi di formato di compressione trama BC7.

Compressione a blocchi (Direct3D 10)

Trame