Když jsme včera psali o plánované nové generaci FSR s označením Project Diamond a dalších novinkách, které přinese ekosystém nové generace konzole Xbox „Helix“ do Windows, byla mezi nimi i nová verze rozhraní DirectStorage, jehož účelem je rychlejší nahrávání dat her z disku, aby byly kratší tzv. „loading times“. Tato zlepšení ale dorazí už před Helixem – DirectStorage 1.4 je přináší už nyní, i včetně nových metod komprese.
DirectStorage 1.4
Microsoft teď na GDC 2026 oznámil veřejnou „preview“ dostupnost nové verze technologie DirectStorage sloužící k přímému načítání komprimovaných herních dat do GPU, a to verze 1.4. Účelem DirectStorage je ukrátit nahrávací časy her tím, že se obejde obvyklý úložišťový „stack“ Windows, ale také tím, že data jsou uložena komprimovaně a rozbaluje si je až přímo GPU. Komprimovaná data se tak při stejné omezené přenosové rychlosti nahrají rychleji. Pokud by byl výkon dostatečný, může hra dokonce takto načítat některé textury až za běhu podle potřeby a ušetřit tak v nárocích na kapacitu grafické paměti, které se grafickým kartám často nedostává.
Zstd na GPU pro kompresi ve hrách
DirectStorage 1.4 tyto schopnosti posílí nasazením účinnější komprese Zstandard, také označované zkratkou Zstd. Tu Microsoft zavádí jako novou metodu komprese pro herní data ve Windows, přičemž by mělo jít o algoritmus současně dosahující lepší komprese než běžně používané starší metody, ale také poměrně výkonný. Tato kombinace vlastností už ho zanesla například do souborového systému ZFS, kde ho lze používat pro transparentní kompresi souborů, ale také do ReFS od Microsoftu, kde má stejnou roli (ReFS schopnost transparentní komprese ze začátku neměl, ale mezitím ji už také získal).
Microsoft jako součást podpory Zstd v DirectStorage 1.4 dá k dispozici implementaci dekomprese tohoto formátu na shaderech GPU, kterou budou hry moci využít pro výkonné rozbalování dat načítaných z disku. Tento kód shaderů (používá DirectX compute shadery) bude open source a jeho podporu plánují všichni výrobci GPU pro osobní počítače s Windows, tedy Nvidia, AMD, Intel, ale i Qualcomm. Tyto firmy pak budou dekompresi Zstd i optimalizovat na své konkrétní architektury GPU, takové optimalizované implementace mají být například od Nvidie a AMD dostupné v druhé polovině letošního roku. Optimalizace chystají i Intel a Qualcomm, ale už bez určení doby, kdy budou k dispozici.
Jak vylepšit kompresi a kvalitu textur
Textury ve hrách už typicky bývají ztrátově komprimovány, takže ušetřit velikost souborů a datový tok při nahrávání do GPU není snadné. Microsoft má proto přichystaný ještě jeden trik, aby Zstd přineslo větší efekt. Firma zpřístupňuje pro vývojáře her nástroj Game Asset Conditioning Library (GACL), což je knihovna provádějící cosi jako pre-processing dat hry, včetně již zkomprimovaných textur, který ztrátovými i bezeztrátovými úpravami dat zvyšuje dosažený kompresní poměr.
Tyto úpravy spočívají zaprvé v tom, že jsou data přeorganizována (Microsoft mluví o „shufflingu“) tak, aby slovníkové metody komprese byly účinnější. Vedle toho jsou pak použité perceptuální (ztrátové) metody optimalizace dat textury tak, aby byla komprimovatelnější – jde o metody Block-Level Entropy Reduction a Component-Level Entropy Reduction (BLER a CLER). Pro optimalizování dosažené komprese a obrazové kvality těmito nástroji je využité i strojové učení.
Demo technologie GACL pro DirectStorage
Důležitý detail je, že minimálně část ztráty kvality, kterou tyto optimalizace BLER a CLER před kompresí způsobí ve jménu zlepšení dosaženého kompresního poměru, by měla být poté opravena při dekompresi. Implementace Zstd v DirectStorage totiž je napsaná tak, že přesně zohledňuje optimalizace, které předtím provádí GACL, a provádí při dekompresi odpovídající post-processing, který jejich efekt zase odstraňuje.
Demo technologie GACL pro DirectStorage
Asi to nebude plně matematicky bezeztrátové, ale snad by to mělo minimalizovat okem viditelné dopady. Už nyní by měla preview verze DirectStorage 1.4 umět opravit efekty GACL s texturami ve formátech BC1, BC3, BC4 a BC5 a v budoucí aktualizaci technologie přibude i podpora této opravy pro formát textur BC7. Microsoft také plánuje, že se v dalších verzích DirectStorage zaměří na výkon těchto operací, takže onen post-processing vylepšující kvalitu výstupu bude stát méně výpočetního času. Tím pak zůstane víc výkonu pro další výpočty hry a případně se může ještě o něco zrychlit nahrávání.
Zlepšováky pro budoucí hry
Tyto nové možnosti nevyužijí hry běžící na API DirectX automaticky. Bude na vývojářích, aby DirectStorage ve svých hrách použili a aby při tvorbě her možnosti komprese Zstd a nástroj GACL aplikovali na svou práci. Tyto technologie se tedy uplatní hlavně u nových titulů v budoucích letech, i když i u těch starších mohou být využité k vyrobení patchů, které zmenší velikost instalace hry.
Zdroj: Microsoft
