Microsoft brengt Zstandard naar DirectStorage om games sneller te laden

Microsoft heeft de publieke preview van DirectStorage 1.4 aangekondigd, samen met de eerste openbare preview van de Game Asset Conditioning Library (GACL). Hiermee wil het bedrijf Zstandard, of Zstd, introduceren als nieuwe compressieformaat voor game-assets op Windows. Op papier richt deze introductie zich op drie concrete doelen: betere gegevenscompressie, kortere laadtijden en soepelere streaming van resources in spellen met grote werelden, zware texturen en constante data-eisen vanaf opslag.

Dit nieuws is belangrijk omdat DirectStorage geen onbeduidend hulpmiddel is binnen het ecosysteem van PC-gaming. Sinds de introductie op Windows wordt deze technologie gezien als een manier voor games om beter gebruik te maken van de snelheid van NVMe SSD’s en om meerdere gigabytes per seconde te verplaatsen met minder belasting voor de CPU. Met andere woorden, het wil de knelpuntveroorzaker verminderen van disk toegang beheer en in plaats daarvan zorgen voor een efficiëntere datastroom tussen opslag, geheugen en GPU.

Meer dan enkel een nieuwe codec voor bestandscompressie

De belangrijkste vernieuwing in DirectStorage 1.4 is de ondersteuning voor Zstd binnen het multi-level decompressor-framework, met de mogelijkheid tot zowel CPU- als GPU-decompressie. Microsoft kiest voor Zstd vanwege verschillende factoren: gunstige compressieratio’s, competitieve decompressiesnelheid, brede beschikbaarheid in software en hardware, en al uitgebreide adoptie buiten het gamingdomein. Dit is geen detail: Zstandard is een open algoritme met een stabiel formaat dat gepubliceerd is als standaard in RFC 8878, wat adoptie in tools en pipelines buiten gesloten of sterk exclusieve oplossingen vergemakkelijkt.

Daarnaast heeft Microsoft de broncode van de Zstd-decompressor shader voor GPU vrijgegeven in de DirectStorage repository. Het betreft momenteel een eerste referentie, nog in ontwikkeling, speciaal geoptimaliseerd voor contentblokken van 256 KB of minder, een formaat dat aansluit bij moderne streaming-asset pakketten. Dit moet dienen als basis voor fabrikanten en ontwikkelaars om toekomstige implementaties te finetunen op verschillende grafische architecturen.

De tweede component is de nieuwe Game Asset Conditioning Library (GACL). Hier is het belangrijk om het wat minder commercieel te benaderen: Microsoft beweert dat deze bibliotheek compressieratio’s van tot wel 50% kan verbeteren voor bepaalde assets met Zstd, maar dit moet worden gezien als een maximale potentie onder specifieke scenario’s, niet als gegarandeerde verbetering in elk spel. De bibliotheek wordt geïntegreerd in de content pipeline en voert voorafgaande optimalisatietechnieken uit vóór compressie, zowel zonder verlies als met gecontroleerd verlies, waaronder shuffling, BLER en CLER (de laatste met machine learning ondersteuning voor betere resultaten).

In deze eerste fase kan DirectStorage 1.4 deze transformatiestappen transparant terugdraaien voor textures van typen BC1, BC3, BC4 en BC5. Ondersteuning voor BC7 wordt naderhand toegevoegd: de GACL-repository vermijdt al experimentiële compatibiliteit, maar het omkeren van deze transformatie in runtime is nog niet beschikbaar binnen DirectStorage 1.4. Dit is belangrijk omdat het aangeeft dat er een routekaart is, maar dat het nog geen afgewerkte oplossing is voor alle gangbare textuurformaten op PC.

Waarom dit de manier waarop games worden geladen zou kunnen veranderen

De echte relevantie van deze update ligt niet alleen in betere compressie, maar in het verbeteren ervan zonder de decompressiekosten te verhogen tijdens gameplay. Bij moderne titels, vooral open-wereld of met zeer gedetailleerde omgevingen, is de ervaring steeds meer afhankelijk van het snel aanvoeren van kleine datablokken: textures, geometrie, LOD’s, shaders en audio. Als deze assets minder ruimte innemen op disk en efficiënt kunnen worden gedecomprimeerd, kan het spel sneller laden, meer content op de achtergrond laden en minder afhankelijk blijven van de CPU.

Ook is er een historische dimensie. DirectStorage kwam in 2022 naar PC als een moderne aanpak voor data-input en -output in Windows, en hetzelfde jaar voegde Microsoft GPU-decompressie toe met DirectStorage 1.1 en GDeflate. Later, in juli 2025, bracht versie 1.3 EnqueueRequests, voor meer controle over data-aanvragen. Versie 1.4 bouwt voort op deze evolutie met wereldwijde support voor D3D12 CreatorID, wat betere batching van command queues en voorspelbare planning van GPU-lasten moet opleveren.

Het is echter belangrijk om geen valse verwachtingen te scheppen. Dit betekent niet dat élk spel met DirectStorage automatisch zwaarder wordt of sneller laadt door simpelweg drivers te updaten of DLL’s te vervangen. Microsoft benadrukt dat functies in DirectStorage 1.4 alleen werken als de assets specifiek gecodeerd en gecomprimeerd zijn met Zstd en eventueel voorbereid met GACL tijdens de bouwfase, en dat de API expliciet door ontwikkelaars moet worden geïntegreerd. De uiteindelijke verbetering hangt dus af van de adoptie door ontwikkelaars.

Bovendien zijn er minimale eisen: het spel moet de API ondersteunen, en om hiervan te profiteren moet het vanuit een NVMe SSD worden gespeeld, met de standaard NVM Express driver, en een compatibele GPU met DirectX 12 en Shader Model 6.0. Dit is goed mogelijk op moderne PC’s, maar het wordt geen automatische upgrade voor alle systemen.

Een veelbelovende preview, maar nog werk aan de winkel

Zoals gebruikelijk bij een preview, zijn er nog beperkingen. In de officiële NuGet-info worden bekende issues vermeld: buffers groter dan 256 MB kunnen onverwachte problemen veroorzaken bij sommige GPU’s, en de fallback shader voor GPU-decompression van Zstd is nog in ontwikkeling en kan TDR’s geven bij bepaalde compressiecontent. Dit zijn begrijpelijke beperkingen in een vroege fase, en onderstrepen dat het hier om testen en evaluatie gaat, niet de definitieve versie.

Op de lange termijn rekent Microsoft op de ondersteuning van GPU-fabrikanten. AMD, Intel, NVIDIA en Qualcomm werken aan driver-optimalisaties voor Zstd in 2026, wat naar verwachting de decompressieprestaties op hardware relevant zal verbeteren. Als dat lukt en ontwikkelaars het gaan inzetten in hun pipelines, kan DirectStorage 1.4 een van die subtiele verbeteringen worden die de eindgebruikerservaring ingrijpend verbeteren: minder wachttijden, meer data in beweging, en diepgang in de werelden zonder extra belasting voor de CPU. De technologie laat nu al dat het die kant op gaat, maar de ultieme test volgt wanneer de eerste games die dit echt benutten verschijnen.

Veelgestelde vragen

Wat is DirectStorage 1.4 en wat verandert ten opzichte van eerdere versies?

DirectStorage 1.4 is de nieuwe openbare preview van Microsoft’s technologie om snelle data toegang te realiseren in Windows-games. De grote innovatie is de ondersteuning voor Zstandard als compressieformaat voor assets en de integratie met de Game Asset Conditioning Library, naast verbeteringen voor ontwikkelaars zoals globale support voor D3D12 CreatorID.

Zal een speler iets merken alleen door drivers of Windows te updaten?

Niet automatisch. Microsoft benadrukt dat functies in DirectStorage 1.4 alleen werken als het spel expliciet is voorbereid met assets die in Zstd zijn gecomprimeerd en met de API zijn geïntegreerd. Bovendien is de functionaliteit afhankelijk van de adoptie door ontwikkelaars en van een compatibele NVMe SSD en GPU met DirectX 12 en Shader Model 6.0.

Wat is Zstandard en waarom is het relevant voor games?

Zstandard is een open compressiealgoritme dat bekendstaat om goede compressieratio’s en snelle decompressie. In games is het aantrekkelijk omdat het de grootte van assets kan verkleinen en deze sneller kan laden tijdens start of streaming, vooral in combinatie met DirectStorage en GPU-verwerking.

Werkt de Game Asset Conditioning Library al met alle textures?

Nee. In deze eerste preview kan DirectStorage 1.4 de transformaties van GACL terugdraaien voor BC1, BC3, BC4 en BC5 textures. Support voor BC7 is nog niet volledig in runtime, maar de bibliotheek bevat al wel experimentele ondersteuning hiervoor.

via: devblogs.microsoft, nuget.org en zstd

Scroll naar boven