Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Podpora komprese bloků (BC) pro textury byla rozšířena v Direct3D 11 tak, aby zahrnovala algoritmy BC6H a BC7. BC6H podporuje data zdroje barev s vysokým dynamickým rozsahem a BC7 poskytuje lepší než průměrnou kompresi kvality s méně artefakty pro standardní zdrojová data RGB.
Podrobnější informace o podpoře algoritmů komprese bloků před Direct3D 11, včetně podpory formátů BC1 až BC5, naleznete v tématu Block Compression (Direct3D 10).
Poznámka k formátům souborů: Formáty komprese textur BC6H a BC7 používají formát DDS k ukládání komprimovaných dat textury. Další informace najdete v průvodci programováním pro DDS podrobnosti.
Blokové formáty komprese podporované v Direct3D 11
Zdrojová data | Minimální požadované rozlišení komprese dat | Doporučený formát | Minimální podporovaná úroveň funkcí |
---|---|---|---|
Tříkanálová barva s alfa kanálem | Tři barevné kanály (5 bitů:6 bitů:5 bitů) s 0 nebo 1 bity alfa | BC1 | Direct3D 9.1 |
Tříkanálová barva s alfa kanálem | Tři barevné kanály (5 bitů:6 bitů:5 bitů) s 4 bity alfa | BC2 | Direct3D 9.1 |
Tříkanálová barva s alfa kanálem | Tři barevné kanály (5 bitů:6 bitů:5 bitů) s 8 bity alfa | BC3 | Direct3D 9.1 |
Barva jednoho kanálu | Jeden barevný kanál (8 bitů) | BC4 | Direct3D 10 |
Dvoukanálová barva | Dva barevné kanály (8 bitů:8 bitů) | BC5 | Direct3D 10 |
Barva tříkanálového vysokého dynamického rozsahu (HDR) | Tři barevné kanály (16 bitů:16 bitů:16 bitů) v "polovině" s plovoucí desetinou čárkou* | BC6H | Direct3D 11 |
Tříkanálová barva, alfa kanál volitelné | Tři barevné kanály (4 až 7 bitů na kanál) s 0 až 8 bity alfa | BC7 | Direct3D 11 |
*"Poloviční" plovoucí desetinná čárka je 16bitová hodnota, která se skládá z volitelného znaménka, 5bitového exponentu a 10 nebo 11bitové mantisy.
Formáty BC1, BC2 a B3
Formáty BC1, BC2 a BC3 jsou ekvivalentní formátům komprese textury DIRECT3D 9 DXTn a jsou stejné jako odpovídající formáty Direct3D 10 BC1, BC2 a BC3. Podpora těchto tří formátů vyžaduje všechny úrovně funkcí (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 a D3D_FEATURE_LEVEL_11_0).
Blokový formát komprese | Formát DXGI | Ekvivalentní formát Direct3D 9 | Bajty na blok 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 |
*Tato komprimační schémata (DXT2 a DXT4) nerozlišují přednásobené alfa formáty Direct3D 9 a standardní alfa formáty. Toto rozlišení musí být zpracováno programovatelnými shadery v době vykreslování.
Formáty BC4 a BC5
Blokový formát komprese | Formát DXGI | Ekvivalentní formát Direct3D 9 | Bajty na blok 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 |
Formát BC6H
Podrobnější informace o tomto formátu najdete v dokumentaci k FORMÁTU BC6H.
Blokový formát komprese | Formát DXGI | Ekvivalentní formát Direct3D 9 | Bajty na blok 4x4 pixelů |
---|---|---|---|
BC6H | DXGI_FORMAT_BC6H_UF16, DXGI_FORMAT_BC6H_SF16, DXGI_FORMAT_BC6H_TYPELESS | Není k dispozici | 16 |
Formát BC6H může vybrat různé režimy kódování pro každý blok 4x4 pixelů. K dispozici je celkem 14 různých režimů kódování, každý s mírně odlišnými kompromisy ve výsledné vizuální kvalitě zobrazené textury. Volba režimů umožňuje rychlé dekódování hardwarem s vybranou nebo přizpůsobenou úrovní kvality podle zdrojového obsahu, ale také výrazně zvyšuje složitost vyhledávacího prostoru.
Formát BC7
Podrobnější informace o tomto formátu najdete v dokumentaci k FORMÁTU BC7.
Blokový formát komprese | Formát DXGI | Ekvivalentní formát Direct3D 9 | Bajty na blok 4x4 pixelů |
---|---|---|---|
BC7 | DXGI_FORMAT_BC7_UNORM, DXGI_FORMAT_BC7_UNORM_SRGB, DXGI_FORMAT_BC7_TYPELESS | Není k dispozici | 16 |
Formát BC7 může vybrat různé režimy kódování pro každý blok 4x4 pixelů. K dispozici je celkem 8 různých režimů kódování, každý s mírně odlišnými kompromisy ve výsledné vizuální kvalitě zobrazené textury. Volba režimů umožňuje rychlé dekódování hardwarem s vybranou nebo přizpůsobenou úrovní kvality podle zdrojového obsahu, ale také výrazně zvyšuje složitost vyhledávacího prostoru.
V této části
Námět | Popis |
---|---|
formátu BC6H |
Formát BC6H je formát komprese textury navržený tak, aby podporoval barevné prostory s vysokým dynamickým rozsahem (HDR) ve zdrojových datech. |
formátu BC7 |
Formát BC7 je formát komprese textury používaný pro vysoce kvalitní kompresi dat RGB a RGBA. |
referenční režimu formátu BC7 |
Tato dokumentace obsahuje seznam 8 režimů bloku a přidělení bitů pro bloky komprese textur BC7. |