Compressione del blocco trama in Direct3D 11
Il supporto della compressione dei blocchi (BC) per le trame è stato esteso in Direct3D 11 per includere gli algoritmi BC6H e BC7. BC6H supporta dati di origine colori a intervalli dinamici elevati e BC7 offre una compressione di qualità migliore della media con meno artefatti per i dati di origine RGB standard.
Per informazioni più specifiche sul supporto dell'algoritmo di compressione dei blocchi prima di Direct3D 11, incluso il supporto per i formati BC1 e BC5, vedere Block Compression (Direct3D 10).
Nota sui formati di file: I formati di compressione delle trame BC6H e BC7 usano il formato di file DDS per archiviare i dati delle trame compresse. Per altre informazioni, vedere la Guida alla programmazione per DDS per informazioni dettagliate.
Formati di compressione a blocchi supportati in Direct3D 11
Dati di origine | Risoluzione minima della 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 | BC2 | 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 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 bit:16 bit) in "metà" a 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-8 bit di alfa | BC7 | Direct3D 11 |
*"Half" a virgola mobile è un valore a 16 bit costituito da un bit di segno facoltativo, un esponente con distorsione a 5 bit e una mantissa a 10 o 11 bit.
Formati BC1, BC2 e B3
I formati BC1, BC2 e BC3 sono equivalenti ai formati di compressione delle trame DXTn Direct3D 9 e corrispondono ai formati 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 di 4x4 pixel |
---|---|---|---|
BC1 | DXGI_FORMAT_BC1_UNORM, DXGI_FORMAT_BC1_UNORM_SRGB, DXGI_FORMAT_BC1_TYPELESS | D3DFMT_DXT1, FourCC="DXT1" | 8 |
BC2 | 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 distinzione tra i formati alfa pre multipli 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 di 4x4 pixel |
---|---|---|---|
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 formato BC6H.
Formato di compressione a blocchi | Formato DXGI | Formato equivalente direct3D 9 | Byte per blocco di 4x4 pixel |
---|---|---|---|
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 4x4 pixel. 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 da parte dell'hardware con il livello di qualità selezionato o adattato in base al contenuto di origine, ma aumenta anche notevolmente la complessità dello spazio di ricerca.
Formato BC7
Per informazioni più dettagliate su questo formato, vedere la documentazione formato BC7.
Formato di compressione a blocchi | Formato DXGI | Formato equivalente direct3D 9 | Byte per blocco di 4x4 pixel |
---|---|---|---|
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 4x4 pixel. 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 da parte dell'hardware con il livello di qualità selezionato o adattato in base al contenuto di origine, ma aumenta anche notevolmente la complessità dello spazio di ricerca.
In questa 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. |
di 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 delle trame BC7. |