[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"portal-settings:figure:it":3,"public-menus:all":45,"post:directstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do:it":531,"related:post:directstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do:it:1":2138},{"statusCode":4,"data":5,"message":44},200,{"tenantId":6,"lang":7,"defaultLang":8,"siteUrl":9,"contactEmail":10,"brandName":11,"logoUrl":12,"siteName":11,"siteDescription":13,"ogImage":14,"robotsIndex":15,"socialLinks":14,"reservedSlugs":14,"seoPolicy":16},"figure","it","en","https:\u002F\u002Ffigure.rocks","info@stajic.de","Figure Rocks","\u002Ffavicon-32x32.png","",null,true,{"branding":17,"relatedContent":18,"crossDomainLinks":19},{"logoUrl":12},{"enabled":15},[20,23,26,29,32,35,38,41],{"url":21,"label":22,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Floving.rocks","loving.rocks",{"url":24,"label":25,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fstajic.de","stajic.de",{"url":27,"label":28,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fbazify.com","bazify.com",{"url":30,"label":31,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fbazify.de","bazify.de",{"url":33,"label":34,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002F2mesta.com","2mesta.com",{"url":36,"label":37,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002F2mesta.de","2mesta.de",{"url":39,"label":40,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fbazify.at","bazify.at",{"url":42,"label":43,"isActive":15,"showInFooter":15,"includeInSameAs":15},"https:\u002F\u002Fweb-hoch3.de","web-hoch3.de","Portal settings resolved",[46],{"id":47,"name":48,"location":49,"isActive":15,"isDefault":15,"items":50},2,"Main Menu","sidebar",[51,65,189,282,358,424],{"id":52,"title":53,"url":61,"target":62,"icon":63,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":64},"1",{"de":54,"en":55,"es":56,"fr":57,"it":55,"ru":58,"sr":59,"zh":60},"Startseite","Home","Inicio","Accueil","Главная","Početna","首页","\u002F","_self","i-lucide-home",[],{"id":66,"title":67,"url":76,"target":62,"icon":77,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":78},"3",{"de":68,"en":69,"es":70,"fr":71,"it":72,"ru":73,"sr":74,"zh":75},"Spiele","Games","Juegos","Jeux","Giochi","Игры","Igre","游戏","\u002Fgames","i-lucide-gamepad-2",[79,92,107,121,135,148,162,176],{"id":80,"title":81,"url":76,"target":62,"icon":90,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":91},"3-1",{"de":82,"en":83,"es":84,"fr":85,"it":86,"ru":87,"sr":88,"zh":89},"Spiele-Hub","Games Hub","Centro de juegos","Hub de jeux","Hub Giochi","Игровой центр","Centar za igre","游戏中心","i-lucide-layout-grid",[],{"id":93,"title":94,"url":103,"target":62,"icon":104,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":106},"1-1",{"de":95,"en":96,"es":97,"fr":98,"it":99,"ru":100,"sr":101,"zh":102},"Neu & Angesagt","New & Trending","Novedades & Tendencias","Nouveautés & Tendances","Novità & Tendenze","Новинки & тренды","Novo & Popularno","新品 & 热门","\u002Fnews\u002Fgaming-news","i-lucide-sparkles","custom",[],{"id":108,"title":109,"url":118,"target":62,"icon":119,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":120},"1-2",{"de":110,"en":111,"es":112,"fr":113,"it":114,"ru":115,"sr":116,"zh":117},"Angebote","Deals","Ofertas","Offres","Offerte","Акции","Ponude","优惠","\u002Fdeals","i-lucide-badge-percent",[],{"id":122,"title":123,"url":132,"target":62,"icon":133,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":134},"1-3",{"de":124,"en":125,"es":126,"fr":127,"it":128,"ru":129,"sr":130,"zh":131},"Release-Kalender","Release Calendar","Calendario de lanzamientos","Calendrier des sorties","Calendario delle uscite","Календарь релизов","Kalendar izdanja","发布日历","\u002Freleases","i-lucide-calendar-days",[],{"id":136,"title":137,"url":145,"target":62,"icon":146,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":147},"3-2",{"de":138,"en":139,"es":140,"fr":141,"it":142,"sr":143,"zh":144},"amiibo-kompatible Spiele","amiibo-Compatible Games","Juegos compatibles con Amiibo","Jeux compatibles Amiibo","Giochi compatibili con amiibo","Amiibo kompatibilne igre","Amiibo 兼容游戏","\u002Freference\u002Fcompatibility","i-lucide-check-circle-2",[],{"id":149,"title":150,"url":159,"target":62,"icon":160,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":161},"3-3",{"de":151,"en":152,"es":153,"fr":154,"it":155,"ru":156,"sr":157,"zh":158},"Wie amiibo funktionieren","How amiibo work","Cómo funcionan los Amiibo","Comment fonctionnent les Amiibo","Come funzionano gli Amiibo","Как работают Amiibo","Kako Amiibo rade","Amiibo 如何运作","\u002Fgames\u002Fhow-amiibo-unlocks-work","i-lucide-puzzle",[],{"id":163,"title":164,"url":173,"target":62,"icon":174,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":175},"3-4",{"de":165,"en":166,"es":167,"fr":168,"it":169,"ru":170,"sr":171,"zh":172},"Beste Amiibo pro Spiel","Best amiibo per Game","Mejores Amiibo por juego","Meilleurs Amiibo par jeu","Migliori Amiibo per gioco","Лучшие Amiibo по играм","Najbolji Amiibo po igri","各游戏最佳 Amiibo","\u002Fgames\u002Fbest-amiibo-per-game","i-lucide-award",[],{"id":177,"title":178,"url":186,"target":62,"icon":187,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":188},"3-5",{"de":179,"en":180,"es":181,"fr":182,"it":183,"ru":184,"sr":185},"Freischaltbares & Belohnungen","Unlockables & Rewards","Desbloqueables & Recompensas","Déblocables & Récompenses","Sbloccabili & Ricompense","Разблокировки & награды","Otključavanja & nagrade","\u002Fgames\u002Funlocks-and-benefits","i-lucide-gift",[],{"id":190,"title":191,"url":199,"target":62,"icon":200,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":201},"4",{"de":192,"en":193,"es":194,"it":195,"ru":196,"sr":197,"zh":198},"Sammeln","Collecting","Coleccionismo","Collezionismo","Коллекционирование","Kolekcionarstvo","收藏","\u002Fcollecting","i-lucide-gem",[202,213,227,240,254,268],{"id":203,"title":204,"url":211,"target":62,"icon":90,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":212},"4-1",{"de":205,"en":206,"fr":207,"it":208,"ru":209,"zh":210},"Sammel-Hub","Collecting Hub","Hub de collecte","Hub di raccolta","Центр сбора","收藏中心","\u002Famiibo\u002Fcollecting",[],{"id":214,"title":215,"url":224,"target":62,"icon":225,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":226},"4-2",{"de":216,"en":217,"es":218,"fr":219,"it":220,"ru":221,"sr":222,"zh":223},"Kaufberatung","Buying Guide","Guía de compra","Guide d'achat","Guida all'acquisto","Гид покупателя","Vodič za kupovinu","购买指南","\u002Famiibo-library\u002Famiibo-buying-smart","i-lucide-shopping-bag",[],{"id":228,"title":229,"url":237,"target":62,"icon":238,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":239},"4-3",{"de":230,"en":230,"es":231,"fr":232,"it":233,"ru":234,"sr":235,"zh":236},"Fake vs Real","Falso vs. Real","Faux vs Vrai","Falso vs Vero","Фейк vs Оригинал","Lažno vs Pravo","真假对比","\u002Famiibo-library\u002Famiibo-buying-smart\u002Favoid-fake-listings","i-lucide-scan",[],{"id":241,"title":242,"url":251,"target":62,"icon":252,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":253},"4-4",{"de":243,"en":244,"es":245,"fr":246,"it":247,"ru":248,"sr":249,"zh":250},"Aufbewahrung & Präsentation","Storage & Display","Almacenamiento & exhibición","Rangement & Présentation","Contenitori & Esposizione","Хранение & витрины","Odlaganje & izlaganje","存储 & 展示","\u002Famiibo-library\u002Famiibo-care-and-storage","i-lucide-box",[],{"id":255,"title":256,"url":265,"target":62,"icon":266,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":267},"4-5",{"de":257,"en":258,"es":259,"fr":260,"it":261,"ru":262,"sr":263,"zh":264},"Preisübersicht","Price Guide","Guía de precios","Guide des prix","Guida ai prezzi","Гид по ценам","Cenovnik","价格指南","\u002Fcollections\u002Fprice-guide","i-lucide-bar-chart-3",[],{"id":269,"title":270,"url":279,"target":62,"icon":280,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":281},"4-6",{"de":271,"en":272,"es":273,"fr":274,"it":275,"ru":276,"sr":277,"zh":278},"Raritäten","Rare Finds","Hallazgos únicos","Trouvailles rares","Pezzi rari","Редкие находки","Retki nalazi","稀有发现","\u002Fcollections\u002Frare-and-notable","i-lucide-trophy",[],{"id":283,"title":284,"url":292,"target":62,"icon":293,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":294},"5",{"de":285,"en":286,"es":287,"fr":286,"it":288,"ru":289,"sr":290,"zh":291},"Technik","Tech","Tecnología","Tecnologia","Технологии","Tehnologija","科技","\u002Ftech","i-lucide-cpu",[295,306,318,331,344],{"id":296,"title":297,"url":292,"target":62,"icon":90,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":305},"5-1",{"de":298,"en":298,"es":299,"fr":300,"it":301,"ru":302,"sr":303,"zh":304},"Tech Hub","Centro tecnológico","Hub Tech","Hub Tecnologico","Технохаб","Tehnološki centar","科技中心",[],{"id":307,"title":308,"url":315,"target":62,"icon":316,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":317},"5-2",{"de":309,"en":310,"fr":311,"it":312,"ru":313,"zh":314},"Audio- & Mikrofonqualität","Audio & Mic Quality","Qualité audio & micro","Qualità audio & mic","Качество звука & микрофона","音频 & 麦克风质量","\u002Fgear\u002Faudio","i-lucide-mic",[],{"id":319,"title":320,"url":328,"target":62,"icon":329,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":330},"5-3",{"de":321,"en":322,"es":323,"fr":324,"it":325,"sr":326,"zh":327},"Controller & Zubehör","Controllers & Accessories","Mandos & accesorios","Manettes & accessoires","Controller & Accessori","Kontroleri & dodatna oprema","控制器 & 配件","\u002Fgear\u002Fcontrols","i-lucide-joystick",[],{"id":332,"title":333,"url":341,"target":62,"icon":342,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":343},"5-4",{"de":334,"en":335,"es":336,"fr":337,"it":338,"ru":339,"sr":340},"Displays & Aufnahme","Displays & Capture","Pantallas & Captura","Écrans & Capture","Display & Acquisizione","Дисплеи & Захват","Ekrani & snimanje","\u002Fgear\u002Fdisplays","i-lucide-monitor",[],{"id":345,"title":346,"url":355,"target":62,"icon":356,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":357},"5-5",{"de":347,"en":348,"es":349,"fr":350,"it":351,"ru":352,"sr":353,"zh":354},"Netzwerkstabilität","Network Stability","Estabilidad de la red","Stabilité du réseau","Stabilità della rete","Стабильность сети","Stabilnost mreže","网络稳定性","\u002Fplaybooks\u002Fnetwork-stability","i-lucide-wifi",[],{"id":359,"title":360,"url":368,"target":62,"icon":369,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":370},"6",{"de":361,"en":361,"es":362,"fr":363,"it":364,"ru":365,"sr":366,"zh":367},"Shop","Tienda","Boutique","Negozio","Магазин","Prodavnica","商店","\u002Fshop","i-lucide-shopping-cart",[371,383,391,399,412],{"id":372,"title":373,"url":368,"target":62,"icon":381,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":382},"6-1",{"de":374,"en":375,"es":376,"fr":377,"ru":378,"sr":379,"zh":380},"Shop-Hub","Shop Hub","Centro de compras","Espace Boutique","Центр магазина","Centar za kupovinu","购物中心","i-lucide-store",[],{"id":384,"title":385,"url":388,"target":62,"icon":389,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":390},"6-2",{"de":386,"en":386,"es":387,"fr":387,"it":387,"sr":387,"zh":387},"amiibo","Amiibo","\u002Famiibo-shop","i-lucide-scan-line",[],{"id":392,"title":393,"url":396,"target":62,"icon":397,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":398},"6-3",{"de":394,"en":394,"es":394,"fr":394,"it":394,"ru":394,"sr":394,"zh":395},"LEGO","乐高","\u002Flego-shop","i-lucide-blocks",[],{"id":400,"title":401,"url":409,"target":62,"icon":410,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":411},"6-4",{"de":402,"en":403,"es":404,"fr":405,"it":406,"sr":407,"zh":408},"Figuren & Sammlerstücke","Figures & Collectibles","Figuras & Coleccionables","Figurines & Objets de collection","Figure & Collezionismo","Figure & kolekcionarstvo","手办 & 收藏品","\u002Fshop\u002Ffigures","i-lucide-package",[],{"id":413,"title":414,"url":421,"target":62,"icon":422,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":423},"6-5",{"de":415,"en":415,"fr":416,"it":417,"ru":418,"sr":419,"zh":420},"Gaming Gear","Équipement gaming","Accessori gaming","Игровое снаряжение","Gejming oprema","游戏装备","\u002Fgaming-gear-shop","i-lucide-headphones",[],{"id":425,"title":426,"url":427,"target":62,"icon":389,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":428},"2",{"de":386,"en":386,"es":386,"fr":386,"it":386,"ru":386,"sr":386,"zh":386},"\u002Famiibo",[429,440,447,461,475,489,503,517],{"id":430,"title":431,"url":427,"target":62,"icon":90,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":439},"2-1",{"de":432,"en":433,"es":434,"fr":435,"it":435,"ru":436,"sr":437,"zh":438},"amiibo-Hub","amiibo Hub","Centro amiibo","Hub amiibo","Хаб amiibo","amiibo centar","amiibo 中心",[],{"id":441,"title":442,"url":444,"target":62,"icon":445,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":446},"1772724791061",{"de":443,"en":443},"Franchise","\u002Famiibo\u002Ffranchise","i-lucide-star",[],{"id":448,"title":449,"url":458,"target":62,"icon":459,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":460},"2-3",{"de":450,"en":451,"es":452,"fr":453,"it":454,"ru":455,"sr":456,"zh":457},"Region & Verpackung (EU\u002FUS\u002FJP)","Region & Packaging (EU\u002FUS\u002FJP)","Región y embalaje (UE\u002FEE. UU.\u002FJP)","Région & Emballage (UE\u002FUS\u002FJP)","Regione & Confezione (EU\u002FUS\u002FJP)","Регион & упаковка (EU\u002FUS\u002FJP)","Region & pakovanje (EU\u002FUS\u002FJP)","地区 & 包装 (EU\u002FUS\u002FJP)","\u002Famiibo-library\u002Famiibo-editions-and-regions","i-lucide-globe",[],{"id":462,"title":463,"url":472,"target":62,"icon":473,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":474},"2-4",{"de":464,"en":465,"es":466,"fr":467,"it":468,"ru":469,"sr":470,"zh":471},"Schnellidentifikations-Checkliste","Fast Identification Checklist","Lista de identificación rápida","Liste d'identification rapide","Checklist identificazione rapida","Чек-лист быстрой идентификации","Kontrolna lista za brzu identifikaciju","快速识别清单","\u002Famiibo\u002Fidentify-checklist","i-lucide-list-checks",[],{"id":476,"title":477,"url":486,"target":62,"icon":487,"isActive":15,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":488},"2-6",{"de":478,"en":479,"es":480,"fr":481,"it":482,"ru":483,"sr":484,"zh":485},"Tipps für Sealed-Sammlungen","Sealed Collection Tips","Consejos de colección sellada","Conseils collection scellée","Consigli collezione sigillata","Советы по коллекции Sealed","Saveti za zapečaćene kolekcije","密封收藏贴士","\u002Famiibo\u002Fsealed-tips","i-lucide-shield-check",[],{"id":490,"title":491,"url":500,"target":62,"icon":501,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":502},"2-5",{"de":492,"en":493,"es":494,"fr":495,"it":496,"ru":497,"sr":498,"zh":499},"Zustand & Bewertung","Condition & Grading","Estado & Graduación","État & Évaluation","Condizioni & Valutazione","Состояние & Оценка","Stanje & ocenjivanje","品相与分级","\u002Famiibo-library\u002Famiibo-condition-and-grading","i-lucide-badge-check",[],{"id":504,"title":505,"url":514,"target":62,"icon":515,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":516},"2-2",{"de":506,"en":507,"es":508,"fr":509,"it":510,"ru":511,"sr":512,"zh":513},"Ausgaben & Nachdrucke","Editions & Reprints","Ediciones & Reimpresiones","Éditions & Réimpressions","Edizioni & ristampe","Издания & переиздания","Izdanja & reizdanja","版本 & 重印","\u002Famiibo\u002Fcollecting\u002F","i-lucide-layers",[],{"id":518,"title":519,"url":528,"target":62,"icon":529,"isActive":15,"type":105,"productId":14,"categoryId":14,"shopCategoryId":14,"articleId":14,"pageId":14,"portfolioId":14,"children":530},"2-7",{"de":520,"en":521,"es":522,"fr":523,"it":524,"ru":525,"sr":526,"zh":527},"Nachdruck-Timeline","Reprint Timeline","Cronología de reimpresión","Chronologie des réimpressions","Cronologia ristampe","Хронология переизданий","Hronologija reprinta","重印时间轴","\u002Freference\u002Ftimelines\u002Famiibo-reprint-timeline","i-lucide-timer",[],{"statusCode":4,"data":532,"message":2137},{"id":533,"title":534,"slug":535,"content":536,"contentJson":537,"excerpt":1211,"featuredImage":1212,"featuredImageAlt":1213,"featuredImageCaption":14,"featuredImageTitle":14,"featuredImageCopyright":14,"featuredImageAuthor":14,"featuredImageSourceUrl":14,"featuredImageLicense":14,"featuredImageIsAiGenerated":1214,"status":1215,"publishedAt":1216,"createdAt":1217,"updatedAt":1218,"seoLocalePaths":1219,"categories":1228,"author":1245,"translations":1249},"449","DirectStorage 1.4 non fa decomprimere i giochi al tuo SSD: cosa fanno realmente Zstd e la decompressione GPU","directstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","\u003Cp>DirectStorage 1.4 aggiunge la compressione Zstandard e il supporto per la decompressione GPU per le risorse di gioco, ma ciò non significa che il tuo SSD stia improvvisamente decomprimendo texture e modelli da solo. L'unità di archiviazione sposta i dati compressi. La CPU o la GPU eseguono comunque il lavoro di decompressione.\u003C\u002Fp>\n\u003Caside class=\"editorjs-callout editorjs-callout--info my-6 rounded-xl border p-5 border-blue-300 bg-blue-50 dark:border-blue-900 dark:bg-blue-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Risposta diretta\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">\u003Cstrong>Il tuo SSD legge i dati di gioco compressi. Normalmente non decomprime quei dati da solo.\u003C\u002Fstrong> DirectStorage coordina il percorso dall&#39;archiviazione alla memoria, mentre la CPU o la GPU possono gestire la decompressione. DirectStorage 1.4 aggiunge Zstandard come nuova opzione codec e consente agli sviluppatori di scegliere la decompressione CPU o GPU.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Caside class=\"editorjs-callout editorjs-callout--note my-6 rounded-xl border p-5 border-gray-300 bg-gray-50 dark:border-gray-700 dark:bg-gray-900\u002F40\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Stato attuale\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">DirectStorage 1.4 è attualmente una \u003Cstrong>anteprima pubblica\u003C\u002Fstrong>. Il suo supporto Zstandard e la Game Asset Conditioning Library sono tecnologie per sviluppatori che devono essere integrate nella build e nella pipeline di runtime di un gioco. Sostituire i file DLL in un gioco esistente non abilita magicamente le nuove funzionalità.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Cnav class=\"editorjs-toc\" data-editorjs-toc=\"true\" aria-label=\"Contenuti\">\u003Cstrong class=\"editorjs-toc__title\">Contenuti\u003C\u002Fstrong>\u003Col class=\"editorjs-toc__list editorjs-toc__list--depth-0\">\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-5\" class=\"editorjs-toc__link\">Il modo più semplice per capire il percorso delle risorse\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-8\" class=\"editorjs-toc__link\">Perché comprimere le risorse di gioco?\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-12\" class=\"editorjs-toc__link\">DirectStorage sposta il problema del collo di bottiglia, non lo elimina\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-16\" class=\"editorjs-toc__link\">Cosa aggiunge DirectStorage 1.4\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-21\" class=\"editorjs-toc__link\">La decompressione GPU costa comunque risorse GPU\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-26\" class=\"editorjs-toc__link\">Perché Zstd è importante rispetto alla compressione DirectStorage precedente\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-31\" class=\"editorjs-toc__link\">Il triangolo dei costi dello streaming degli asset\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-33\" class=\"editorjs-toc__link\">Cosa fa la Game Asset Conditioning Library\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-37\" class=\"editorjs-toc__link\">Cosa significa &quot;conditioning&quot; in parole semplici\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-42\" class=\"editorjs-toc__link\">Dove entra il machine learning in GACL\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-46\" class=\"editorjs-toc__link\">Fino al 50% di compressione migliore non significa che ogni gioco diventi il 50% più piccolo\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-50\" class=\"editorjs-toc__link\">Il test delle affermazioni sulla compressione\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-52\" class=\"editorjs-toc__link\">Perché sostituire le DLL di DirectStorage in un gioco non abilita Zstd\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-57\" class=\"editorjs-toc__link\">Perché SSD più veloci non eliminano il costo di decompressione\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-61\" class=\"editorjs-toc__link\">Il test della pipeline di caricamento\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-63\" class=\"editorjs-toc__link\">Perché questo è importante per lo streaming open-world\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-68\" class=\"editorjs-toc__link\">DirectStorage 1.4 migliora anche la visibilità della pianificazione GPU\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-72\" class=\"editorjs-toc__link\">Cosa faranno in seguito i produttori di GPU\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-76\" class=\"editorjs-toc__link\">Cosa cambierebbe questa risposta?\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-79\" class=\"editorjs-toc__link\">Limitazioni\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-82\" class=\"editorjs-toc__link\">Conclusione\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-86\" class=\"editorjs-toc__link\">FAQ\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-88\" class=\"editorjs-toc__link\">Glossario\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-90\" class=\"editorjs-toc__link\">Fonti primarie\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Fol>\u003C\u002Fnav>\n\u003Ch2 id=\"section-5\">Il modo più semplice per capire il percorso delle risorse\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Cosa succede quando un gioco carica risorse compresse\u003C\u002Fh3>\u003Cdiv class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4\">\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">1\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">1. La risorsa di gioco è memorizzata compressa\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Texture, geometria o altri dati sono impacchettati in forma compressa sull'SSD.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">2\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">2. L'SSD legge i byte compressi\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">L'unità NVMe sposta rapidamente quei byte dall'archiviazione al percorso I\u002FO del sistema.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">3\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">3. DirectStorage pianifica la richiesta\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">DirectStorage coordina le letture ad alto throughput e dove devono andare i dati risultanti.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">4\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">4. La CPU o la GPU decomprimono\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Il flusso compresso viene espanso nella forma necessaria al gioco.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">5\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">5. La risorsa diventa utilizzabile\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">La texture, il buffer o un'altra risorsa decompressa può quindi essere consumata dal renderer o dai sistemi di gioco.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Caside class=\"editorjs-callout editorjs-callout--success my-6 rounded-xl border p-5 border-emerald-300 bg-emerald-50 dark:border-emerald-900 dark:bg-emerald-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Il modello mentale\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">\u003Cstrong>SSD = sposta dati compressi.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>DirectStorage = coordina il trasferimento.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>CPU\u002FGPU = decomprimono.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Motore di gioco = utilizza il risultato.\u003C\u002Fstrong>\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-8\">Perché comprimere le risorse di gioco?\u003C\u002Fh2>\n\u003Cp>I giochi moderni contengono enormi quantità di texture, geometria, audio e altri dati.\u003C\u002Fp>\n\u003Cp>Memorizzare ogni risorsa non compressa aumenterebbe le dimensioni di installazione e costringerebbe il dispositivo di archiviazione a leggere più byte per lo stesso contenuto.\u003C\u002Fp>\n\u003Cp>La compressione riduce la quantità di dati che deve essere memorizzata e trasferita. Il compromesso è che i dati devono essere decompressi prima che il gioco possa utilizzarli.\u003C\u002Fp>\n\u003Ch2 id=\"section-12\">DirectStorage sposta il problema del collo di bottiglia, non lo elimina\u003C\u002Fh2>\n\u003Cp>Un'unità NVMe veloce può fornire dati compressi molto più rapidamente rispetto alle vecchie pipeline di archiviazione, ma letture più veloci aiutano solo se il resto del percorso riesce a tenere il passo.\u003C\u002Fp>\n\u003Cp>Se la CPU deve decomprimere migliaia di piccoli blocchi di risorse mentre esegue anche la logica di gioco, la fisica e l'invio dei draw, la decompressione stessa può diventare costosa.\u003C\u002Fp>\n\u003Cp>Ecco perché DirectStorage supporta la decompressione GPU: parte del lavoro può spostarsi dalla CPU al calcolo GPU massivamente parallelo.\u003C\u002Fp>\n\u003Ch2 id=\"section-16\">Cosa aggiunge DirectStorage 1.4\u003C\u002Fh2>\n\u003Cp>DirectStorage 1.4 aggiunge Zstandard, solitamente scritto Zstd, come formato di compressione supportato.\u003C\u002Fp>\n\u003Cp>Microsoft ha scelto Zstd perché combina forti rapporti di compressione, buone prestazioni di decompressione, ampia disponibilità software e hardware e un'adozione diffusa.\u003C\u002Fp>\n\u003Cp>Il cambiamento importante è che Zstd è integrato nel framework di decompressione di DirectStorage con percorsi sia CPU che GPU.\u003C\u002Fp>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Decompressione CPU vs GPU\u003C\u002Fh3>\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left dark:border-gray-700 dark:bg-gray-900\">\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Decompressione CPU\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Decompressione GPU\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Dove viene eseguita\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Vantaggio potenziale\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Costo principale\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Scelta migliore\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-21\">La decompressione GPU costa comunque risorse GPU\u003C\u002Fh2>\n\u003Cp>La decompressione GPU non è gratuita.\u003C\u002Fp>\n\u003Cp>DirectStorage utilizza buffer di staging nella VRAM per coordinare l'input compresso e l'output decompresso. Microsoft avverte che un buffer di staging troppo grande può sottrarre memoria al rendering, mentre uno troppo piccolo può ridurre la velocità effettiva perché le richieste devono attendere.\u003C\u002Fp>\n\u003Cp>Quindi la decompressione GPU crea un altro problema di bilanciamento: ridurre il lavoro della CPU senza rubare troppa memoria GPU o potenza di calcolo al rendering.\u003C\u002Fp>\n\u003Caside class=\"editorjs-referral my-6\">\u003Ca href=\"https:\u002F\u002Ffigure.rocks\u002Fit\u002Fblog\u002Fvram-usage-is-not-vram-requirement-why-a-full-memory-meter-does-not-tell-the-whole-story\" class=\"flex flex-col sm:flex-row gap-4 rounded-xl border border-gray-200 dark:border-gray-700 p-4 transition hover:border-primary-500\">\u003Cdiv class=\"min-w-0 flex-1\">\u003Cstrong class=\"block text-lg text-gray-900 dark:text-gray-100\">L'utilizzo della VRAM non è il requisito di VRAM: perché un misuratore di memoria pieno non racconta tutta la storia\u003C\u002Fstrong>\u003Cp class=\"mt-2 text-sm text-gray-600 dark:text-gray-300\">Perché la capacità della VRAM, i budget di residenza e i working set contano più di un singolo numero di utilizzo della memoria.\u003C\u002Fp>\u003Cspan class=\"mt-3 inline-flex text-sm font-medium text-primary-600 dark:text-primary-400\">Leggi la guida sulla VRAM →\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002Fa>\u003C\u002Faside>\n\u003Ch2 id=\"section-26\">Perché Zstd è importante rispetto alla compressione DirectStorage precedente\u003C\u002Fh2>\n\u003Cp>DirectStorage supportava già GDeflate, un formato di compressione progettato per la decompressione parallela su GPU.\u003C\u002Fp>\n\u003Cp>Zstd aggiunge un'opzione diversa: uno standard di compressione aperto ampiamente utilizzato con forti rapporti di compressione e strumenti estesi.\u003C\u002Fp>\n\u003Cp>Microsoft sta anche pubblicando uno shader di calcolo per la decompressione GPU Zstd open source come base che i fornitori di GPU possono ottimizzare ulteriormente.\u003C\u002Fp>\n\u003Cp>Lo shader iniziale è ottimizzato per blocchi di 256 KB o inferiori, il che corrisponde ai comuni schemi di packaging dei giochi orientati allo streaming.\u003C\u002Fp>\n\u003Ch2 id=\"section-31\">Il triangolo dei costi dello streaming degli asset\u003C\u002Fh2>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">La compressione modifica tre costi diversi\u003C\u002Fh3>\u003Cdiv class=\"overflow-x-auto\">\u003Ctable class=\"w-full border-collapse\">\u003Cthead>\u003Ctr>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left dark:border-gray-700 dark:bg-gray-900\">\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Cosa può ridurre la compressione\u003C\u002Fth>\u003Cth class=\"border border-gray-300 bg-gray-50 px-4 py-3 text-left font-semibold dark:border-gray-700 dark:bg-gray-900\">Cosa può aumentare\u003C\u002Fth>\u003C\u002Ftr>\u003C\u002Fthead>\u003Ctbody>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Dimensione dell&#39;installazione\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">I\u002FO di archiviazione\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003Ctr>\u003Cth class=\"border border-gray-300 px-4 py-3 text-left font-semibold dark:border-gray-700\">Lavoro CPU\u002FGPU a runtime\u003C\u002Fth>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003Ctd class=\"border border-gray-300 px-4 py-3 dark:border-gray-700\">\u003C\u002Ftd>\u003C\u002Ftr>\u003C\u002Ftbody>\u003C\u002Ftable>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-33\">Cosa fa la Game Asset Conditioning Library\u003C\u002Fh2>\n\u003Cp>Microsoft ha introdotto la Game Asset Conditioning Library, o GACL, insieme a DirectStorage 1.4.\u003C\u002Fp>\n\u003Cp>GACL non sostituisce Zstd. Prepara alcuni asset di gioco in modo che Zstd possa comprimerli in modo più efficace.\u003C\u002Fp>\n\u003Cp>I dati delle texture sono un obiettivo principale perché le texture spesso costituiscono una grande parte della dimensione dei pacchetti dei giochi moderni.\u003C\u002Fp>\n\u003Ch2 id=\"section-37\">Cosa significa \"conditioning\" in parole semplici\u003C\u002Fh2>\n\u003Cp>Conditioning significa riorganizzare o modificare leggermente i dati prima della compressione, in modo che il compressore possa trovare schemi più utili.\u003C\u002Fp>\n\u003Cp>Per le texture con compressione a blocchi, GACL può riorganizzare la disposizione dei byte prima della compressione Zstd. DirectStorage inverte quella trasformazione dopo la decompressione.\u003C\u002Fp>\n\u003Cp>GACL include anche tecniche di riduzione dell'entropia che possono semplificare deliberatamente alcune informazioni delle texture per comprimerle meglio.\u003C\u002Fp>\n\u003Caside class=\"editorjs-callout editorjs-callout--warning my-6 rounded-xl border p-5 border-amber-300 bg-amber-50 dark:border-amber-900 dark:bg-amber-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Non tutte le modalità di conditioning sono lossless\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">GACL include sia \u003Cstrong>trasformazioni lossless\u003C\u002Fstrong> sia \u003Cstrong>ottimizzazione lossy delle texture\u003C\u002Fstrong>. Una compressione migliore può talvolta derivare dall&#39;accettare una quantità controllata di errore visivo.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-42\">Dove entra il machine learning in GACL\u003C\u002Fh2>\n\u003Cp>La Component-Level Entropy Reduction di Microsoft, o CLER, utilizza il machine learning come parte del processo per ridurre l'entropia delle texture.\u003C\u002Fp>\n\u003Cp>Lo scopo non è generare texture a runtime. Il lavoro di ML fa parte della preparazione dei dati delle texture affinché la rappresentazione compressa finale possa diventare più piccola mantenendo una qualità visiva accettabile.\u003C\u002Fp>\n\u003Cp>Questo rende GACL un'ottimizzazione della pipeline dei contenuti piuttosto che un sistema di AI generativa in-game.\u003C\u002Fp>\n\u003Ch2 id=\"section-46\">Fino al 50% di compressione migliore non significa che ogni gioco diventi il 50% più piccolo\u003C\u002Fh2>\n\u003Cp>Microsoft afferma che GACL può offrire fino a un miglioramento del 50% nei rapporti di compressione Zstd per asset adatti.\u003C\u002Fp>\n\u003Cp>Questo non equivale a dire che un'intera installazione di gioco si riduca del 50%.\u003C\u002Fp>\n\u003Cp>L'impatto reale dipende da quali asset vengono condizionati, quanto sono comprimibili, quale proporzione del gioco rappresentano e se le tecniche lossy sono accettabili.\u003C\u002Fp>\n\u003Ch2 id=\"section-50\">Il test delle affermazioni sulla compressione\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Come leggere correttamente un'affermazione sulla compressione dei giochi\u003C\u002Fh3>\u003Cdiv class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4\">\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">1\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">1. Chiedi cosa viene compresso\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Solo texture, tutti gli asset o l'installazione completa?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">2\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">2. Chiedi qual è la baseline di confronto\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Dati non compressi, GDeflate, vecchie impostazioni Zstd o un altro formato pacchettizzato?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">3\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">3. Verifica se la tecnica è lossless\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Un risultato più piccolo può includere una perdita di qualità controllata.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">4\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">4. Separa la dimensione del file dalle prestazioni di caricamento\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Una compressione migliore riduce i byte letti ma la decompressione costa comunque tempo.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">5\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">5. Verifica il percorso CPU\u002FGPU\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Gli stessi dati compressi possono comportarsi diversamente a seconda di dove viene eseguita la decompressione.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">6\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">6. Misura l'intera pipeline\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Throughput di archiviazione, tempo di decompressione, uso della memoria di staging e disponibilità finale degli asset sono tutti importanti.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-52\">Perché sostituire le DLL di DirectStorage in un gioco non abilita Zstd\u003C\u002Fh2>\n\u003Cp>Questo è un malinteso particolarmente importante.\u003C\u002Fp>\n\u003Cp>Microsoft ha risposto esplicitamente a questo dopo l'annuncio di DirectStorage 1.4: sostituire i file DLL di DirectStorage in un gioco esistente non attiva le nuove funzionalità in anteprima.\u003C\u002Fp>\n\u003Cp>Gli asset del gioco devono essere creati e compressi con Zstd durante il processo di build, il condizionamento GACL opzionale deve avvenire prima della distribuzione, e il gioco stesso deve chiamare le API DirectStorage pertinenti.\u003C\u002Fp>\n\u003Caside class=\"editorjs-callout editorjs-callout--success my-6 rounded-xl border p-5 border-emerald-300 bg-emerald-50 dark:border-emerald-900 dark:bg-emerald-950\u002F20\" role=\"note\">\u003Cstrong class=\"block mb-2 text-gray-900 dark:text-gray-100\">Una DLL di runtime non può riscrivere la pipeline degli asset del gioco\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">I file su disco, il loro formato di compressione e l&#39;integrazione con il motore devono essere già progettati per DirectStorage 1.4.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-57\">Perché SSD più veloci non eliminano il costo di decompressione\u003C\u002Fh2>\n\u003Cp>Un SSD estremamente veloce può ridurre il tempo necessario per leggere i byte compressi, ma non elimina il tempo richiesto per trasformare quei byte in asset utilizzabili.\u003C\u002Fp>\n\u003Cp>Man mano che lo storage diventa più veloce, l'importanza relativa di decompressione, preparazione degli asset, upload sulla GPU ed elaborazione lato motore diventa maggiore.\u003C\u002Fp>\n\u003Cp>Ecco esattamente perché DirectStorage si è evoluto oltre il semplice I\u002FO.\u003C\u002Fp>\n\u003Ch2 id=\"section-61\">Il test della pipeline di caricamento\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Come diagnosticare se lo storage è davvero il collo di bottiglia\u003C\u002Fh3>\u003Cdiv class=\"grid grid-cols-1 md:grid-cols-2 xl:grid-cols-3 gap-4\">\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">1\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">1. Misurare il tempo di lettura dello storage\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Quanto tempo occorre per fornire i byte dell'asset compresso?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">2\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">2. Misurare la decompressione\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Quanto tempo di CPU o GPU viene speso per espandere i dati?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">3\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">3. Misurare accodamento e staging\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Le richieste sono in attesa perché i buffer di staging o le code della GPU sono saturi?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">4\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">4. Misurare upload e creazione delle risorse\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Quanto tempo passa prima che i dati decompressi diventino una risorsa GPU utilizzabile?\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">5\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">5. Misurare il lavoro lato motore\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Shader, creazione di oggetti, configurazione del mondo e registrazione degli asset possono ancora dominare il caricamento.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv class=\"editorjs-process__step min-w-0  rounded-xl border border-gray-200 dark:border-gray-700 p-4\">\u003Cdiv class=\"text-xs font-semibold text-gray-500 dark:text-gray-400\">6\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 font-semibold text-gray-900 dark:text-gray-100\">6. Correggere la fase più lenta\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Un SSD più veloce aiuta solo quando l'I\u002FO dello storage è effettivamente la parte limitante.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-63\">Perché questo è importante per lo streaming open-world\u003C\u002Fh2>\n\u003Cp>I giochi open-world spostano continuamente dati degli asset mentre il giocatore attraversa la mappa.\u003C\u002Fp>\n\u003Cp>Ciò significa che lo streaming degli asset non riguarda solo la riduzione di una schermata di caricamento. La pipeline deve fornire, decomprimere e preparare i dati mentre il gameplay continua.\u003C\u002Fp>\n\u003Cp>Un codec con un forte rapporto di compressione può ridurre il numero di byte prelevati dallo storage, mentre una decompressione GPU veloce può aiutare a mantenere il tempo CPU disponibile per la simulazione.\u003C\u002Fp>\n\u003Cp>Ma se la GPU stessa è già satura, spostare lì il lavoro di decompressione potrebbe richiedere un'attenta pianificazione.\u003C\u002Fp>\n\u003Ch2 id=\"section-68\">DirectStorage 1.4 migliora anche la visibilità della pianificazione GPU\u003C\u002Fh2>\n\u003Cp>DirectStorage 1.4 aggiunge il supporto D3D12 CreatorID per le code di comandi interne che gestisce.\u003C\u002Fp>\n\u003Cp>Lo scopo è aiutare i carichi di lavoro DirectStorage a partecipare in modo più prevedibile al raggruppamento delle code D3D12 e alla pianificazione dell'esecuzione GPU.\u003C\u002Fp>\n\u003Cp>Questo è importante perché la decompressione ora compete per lo stesso ecosistema GPU del rendering e di altri lavori di calcolo.\u003C\u002Fp>\n\u003Ch2 id=\"section-72\">Cosa faranno in seguito i produttori di GPU\u003C\u002Fh2>\n\u003Cp>Microsoft afferma che AMD, Intel, NVIDIA e Qualcomm stanno lavorando a ottimizzazioni Zstd specifiche per hardware e driver.\u003C\u002Fp>\n\u003Cp>AMD e NVIDIA hanno indicato pubblicamente un supporto ottimizzato previsto per la seconda metà del 2026, mentre Intel e Qualcomm hanno anche descritto il lavoro in corso sulla piattaforma.\u003C\u002Fp>\n\u003Cp>Ciò significa che lo shader GPU pubblico di DirectStorage è una base di riferimento, non necessariamente il percorso di prestazioni finale per l'hardware futuro.\u003C\u002Fp>\n\u003Ch2 id=\"section-76\">Cosa cambierebbe questa risposta?\u003C\u002Fh2>\n\u003Cp>DirectStorage 1.4 è ancora un'anteprima pubblica. L'API finale, le prestazioni dello shader Zstd, il supporto GACL e i percorsi dei driver ottimizzati dai fornitori possono tutti cambiare.\u003C\u002Fp>\n\u003Cp>Se i futuri dispositivi di archiviazione aggiungessero una decompressione hardware standardizzata integrata nella pipeline delle risorse del PC, la netta separazione tra \"letture SSD\" e \"decompressione CPU\u002FGPU\" potrebbe diventare meno assoluta. Non è il modello normale di DirectStorage 1.4 oggi.\u003C\u002Fp>\n\u003Ch2 id=\"section-79\">Limitazioni\u003C\u002Fh2>\n\u003Cp>Questo articolo spiega l'attuale architettura di anteprima pubblica di DirectStorage 1.4 di Microsoft. Non afferma che ogni gioco che utilizza DirectStorage userà Zstd, la decompressione GPU o GACL.\u003C\u002Fp>\n\u003Cp>Le dichiarazioni di Microsoft sul rapporto di compressione e sulle prestazioni sono affermazioni tecnologiche del fornitore della piattaforma. I risultati reali nei giochi dipendono dal mix di risorse, dalle impostazioni di compressione, dall'hardware, dai driver e dall'integrazione nel motore.\u003C\u002Fp>\n\u003Ch2 id=\"section-82\">Conclusione\u003C\u002Fh2>\n\u003Cp>DirectStorage 1.4 è più facile da capire una volta separati i compiti.\u003C\u002Fp>\n\u003Cp>L'SSD sposta i byte compressi. DirectStorage pianifica il trasferimento. Zstd definisce come i dati sono compressi. La CPU o la GPU li decomprime. GACL può preparare alcune risorse in modo che Zstd le comprima più efficacemente. Il motore di gioco consuma quindi la risorsa finita.\u003C\u002Fp>\n\u003Cp>Un SSD più veloce è solo una parte di quella catena.\u003C\u002Fp>\n\u003Ch2 id=\"section-86\">FAQ\u003C\u002Fh2>\n\u003Csection class=\"editorjs-faq my-6 rounded-xl border border-gray-200 p-5 dark:border-gray-700\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">DirectStorage 1.4 e Zstd in parole semplici\u003C\u002Fh3>\u003Cdiv id=\"faq1\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">DirectStorage fa decomprimere le risorse di gioco all&#39;SSD?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">No. L&#39;SSD legge i dati compressi. DirectStorage coordina l&#39;I\u002FO, mentre la CPU o la GPU esegue la decompressione.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq2\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Cosa c&#39;è di nuovo in DirectStorage 1.4?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">L&#39;anteprima pubblica aggiunge la compressione Zstandard, il supporto alla decompressione CPU\u002FGPU, l&#39;integrazione con la Game Asset Conditioning Library e una migliore identificazione delle code D3D12.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq3\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Posso sostituire la DLL di DirectStorage di un gioco per abilitare Zstd?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">No. Microsoft afferma che le risorse devono essere create con Zstd\u002FGACL e il gioco deve utilizzare esplicitamente le nuove API.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq4\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">La decompressione GPU è gratuita?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">No. Utilizza calcolo GPU, larghezza di banda e buffer di staging, sebbene possa ridurre il carico della CPU.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq5\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Cosa fa GACL?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Condiziona le risorse di gioco, specialmente le texture, in modo che Zstd possa comprimerle più efficacemente. Alcuni metodi sono lossless e altri lossy.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003Cdiv id=\"faq6\" class=\"border-t border-gray-200 py-4 first:border-t-0 dark:border-gray-700\">\u003Ch4 class=\"font-semibold text-gray-900 dark:text-gray-100\">Una compressione migliore fino al 50% significa che un gioco diventa il 50% più piccolo?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">No. Il dato si applica a risorse condizionate adatte, non automaticamente all&#39;intera installazione del gioco.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-88\">Glossario\u003C\u002Fh2>\n\u003Csection class=\"editorjs-glossary my-6 rounded-xl border border-gray-200 dark:border-gray-700 p-5\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Termini chiave di DirectStorage 1.4\u003C\u002Fh3>\u003Cdl>\u003Cdiv id=\"directstorage\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">DirectStorage\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">API della famiglia DirectX di Microsoft per I\u002FO ad alto throughput e decompressione delle risorse di gioco su Windows.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"zstd\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Zstandard (Zstd)\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Un formato di compressione aperto aggiunto a DirectStorage 1.4 per le risorse di gioco.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"gpu-decompression\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Decompressione GPU\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Espandere i dati compressi utilizzando il calcolo GPU invece di eseguire tutta la decompressione sulla CPU.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"staging-buffer\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Buffer di staging\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Memoria GPU temporanea utilizzata da DirectStorage per coordinare i flussi di dati compressi e decompressi.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"gacl\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">GACL\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">La Game Asset Conditioning Library di Microsoft, che prepara le risorse per migliorare l'efficienza di compressione.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"asset-streaming-cost-triangle\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Triangolo del costo dello streaming delle risorse\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Un modello Figure Rocks che separa dimensione di archiviazione, traffico I\u002FO e costo di decompressione a runtime.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"compression-claim-test\" class=\"border-t border-gray-200 dark:border-gray-700 py-3 first:border-t-0\">\u003Cdt class=\"font-semibold text-gray-900 dark:text-gray-100\">Test delle affermazioni sulla compressione\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Una lista di controllo Figure Rocks per interpretare le affermazioni sulla compressione verificando l'ambito delle risorse, la base di riferimento, la perdita di qualità e il costo a runtime.\u003C\u002Fdd>\u003C\u002Fdiv>\u003C\u002Fdl>\u003C\u002Fsection>\n\u003Ch2 id=\"section-90\">Fonti primarie\u003C\u002Fh2>\n\u003Ca href=\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fdirectstorage-1-4-release-adds-support-for-zstandard\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Microsoft DirectX — DirectStorage 1.4 aggiunge Zstandard\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Annuncio ufficiale di marzo 2026 che copre Zstd, decompressione CPU\u002FGPU, GACL, piani di ottimizzazione dei fornitori di GPU e l&#39;anteprima di DirectStorage 1.4.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fdirectstorage-api-downloads\u002F\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Microsoft DirectX — SDK e API DirectStorage\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Pagina di rilascio ufficiale che elenca le funzionalità dell&#39;anteprima di DirectStorage 1.4 e lo stato del pacchetto.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FDirectStorage\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Microsoft — DirectStorage GitHub\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Repository ufficiale contenente esempi, benchmark di decompressione GPU e linee guida per l&#39;implementazione di DirectStorage.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FDirectStorage\u002Fblob\u002Fmain\u002FDocs\u002FDeveloperGuidance.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Microsoft — Guida per sviluppatori DirectStorage\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Guida ufficiale che spiega il flusso dei dati compressi, la decompressione GPU, i buffer di staging e i compromessi sulla memoria.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FGame-Asset-Conditioning-Library\u002Fblob\u002Fmain\u002FREADME.md\" target=\"_blank\" rel=\"noopener noreferrer\" class=\"editorjs-link-tool block border border-gray-200 dark:border-gray-700 rounded-lg p-4 transition text-gray-900 dark:text-gray-100 hover:border-primary-500 hover:bg-primary-50 dark:hover:bg-gray-900 hover:text-gray-900 dark:hover:text-gray-100\">\u003Cstrong class=\"block font-semibold\">Microsoft — Game Asset Conditioning Library\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Documentazione ufficiale che copre il condizionamento delle texture, Zstd, le trasformazioni shuffle e le tecniche di riduzione dell&#39;entropia.\u003C\u002Fp>\u003C\u002Fa>",{"time":538,"blocks":539,"version":1210},1790406139200,[540,546,554,561,568,574,597,604,609,614,619,624,629,634,639,644,649,654,659,664,695,700,705,710,715,724,729,734,739,744,749,754,778,783,788,793,798,803,808,813,818,825,830,835,840,845,850,855,860,865,870,894,899,904,909,914,920,925,930,935,940,945,969,974,979,984,989,994,999,1004,1009,1014,1019,1024,1029,1034,1039,1044,1049,1054,1059,1064,1069,1074,1079,1084,1089,1120,1125,1159,1164,1174,1183,1192,1201],{"id":541,"data":542,"type":544,"tunes":545},"7b461210c1",{"text":543},"DirectStorage 1.4 aggiunge la compressione Zstandard e il supporto per la decompressione GPU per le risorse di gioco, ma ciò non significa che il tuo SSD stia improvvisamente decomprimendo texture e modelli da solo. L'unità di archiviazione sposta i dati compressi. La CPU o la GPU eseguono comunque il lavoro di decompressione.","paragraph",{},{"id":547,"data":548,"type":552,"tunes":553},"2f0f63271c",{"body":549,"title":550,"variant":551},"\u003Cstrong>Il tuo SSD legge i dati di gioco compressi. Normalmente non decomprime quei dati da solo.\u003C\u002Fstrong> DirectStorage coordina il percorso dall'archiviazione alla memoria, mentre la CPU o la GPU possono gestire la decompressione. DirectStorage 1.4 aggiunge Zstandard come nuova opzione codec e consente agli sviluppatori di scegliere la decompressione CPU o GPU.","Risposta diretta","info","callout",{},{"id":555,"data":556,"type":552,"tunes":560},"48a120727f",{"body":557,"title":558,"variant":559},"DirectStorage 1.4 è attualmente una \u003Cstrong>anteprima pubblica\u003C\u002Fstrong>. Il suo supporto Zstandard e la Game Asset Conditioning Library sono tecnologie per sviluppatori che devono essere integrate nella build e nella pipeline di runtime di un gioco. Sostituire i file DLL in un gioco esistente non abilita magicamente le nuove funzionalità.","Stato attuale","note",{},{"id":562,"data":563,"type":566,"tunes":567},"2954eec7f8",{"title":564,"maxLevel":565,"minLevel":47},"Contenuti",3,"tableOfContents",{},{"id":569,"data":570,"type":572,"tunes":573},"980168054a",{"text":571,"level":47},"Il modo più semplice per capire il percorso delle risorse","header",{},{"id":575,"data":576,"type":595,"tunes":596},"99210cf7a2",{"steps":577,"title":593,"orientation":594},[578,581,584,587,590],{"label":579,"description":580},"1. La risorsa di gioco è memorizzata compressa","Texture, geometria o altri dati sono impacchettati in forma compressa sull'SSD.",{"label":582,"description":583},"2. L'SSD legge i byte compressi","L'unità NVMe sposta rapidamente quei byte dall'archiviazione al percorso I\u002FO del sistema.",{"label":585,"description":586},"3. DirectStorage pianifica la richiesta","DirectStorage coordina le letture ad alto throughput e dove devono andare i dati risultanti.",{"label":588,"description":589},"4. La CPU o la GPU decomprimono","Il flusso compresso viene espanso nella forma necessaria al gioco.",{"label":591,"description":592},"5. La risorsa diventa utilizzabile","La texture, il buffer o un'altra risorsa decompressa può quindi essere consumata dal renderer o dai sistemi di gioco.","Cosa succede quando un gioco carica risorse compresse","auto","processFlow",{},{"id":598,"data":599,"type":552,"tunes":603},"d375ebe60b",{"body":600,"title":601,"variant":602},"\u003Cstrong>SSD = sposta dati compressi.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>DirectStorage = coordina il trasferimento.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>CPU\u002FGPU = decomprimono.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Motore di gioco = utilizza il risultato.\u003C\u002Fstrong>","Il modello mentale","success",{},{"id":605,"data":606,"type":572,"tunes":608},"dbcc92fffe",{"text":607,"level":47},"Perché comprimere le risorse di gioco?",{},{"id":610,"data":611,"type":544,"tunes":613},"fa9fc5a6fc",{"text":612},"I giochi moderni contengono enormi quantità di texture, geometria, audio e altri dati.",{},{"id":615,"data":616,"type":544,"tunes":618},"375587179a",{"text":617},"Memorizzare ogni risorsa non compressa aumenterebbe le dimensioni di installazione e costringerebbe il dispositivo di archiviazione a leggere più byte per lo stesso contenuto.",{},{"id":620,"data":621,"type":544,"tunes":623},"6f00b8cbff",{"text":622},"La compressione riduce la quantità di dati che deve essere memorizzata e trasferita. Il compromesso è che i dati devono essere decompressi prima che il gioco possa utilizzarli.",{},{"id":625,"data":626,"type":572,"tunes":628},"1c00bf96d8",{"text":627,"level":47},"DirectStorage sposta il problema del collo di bottiglia, non lo elimina",{},{"id":630,"data":631,"type":544,"tunes":633},"2fd37b24a2",{"text":632},"Un'unità NVMe veloce può fornire dati compressi molto più rapidamente rispetto alle vecchie pipeline di archiviazione, ma letture più veloci aiutano solo se il resto del percorso riesce a tenere il passo.",{},{"id":635,"data":636,"type":544,"tunes":638},"d68045b6ad",{"text":637},"Se la CPU deve decomprimere migliaia di piccoli blocchi di risorse mentre esegue anche la logica di gioco, la fisica e l'invio dei draw, la decompressione stessa può diventare costosa.",{},{"id":640,"data":641,"type":544,"tunes":643},"a16eb295ca",{"text":642},"Ecco perché DirectStorage supporta la decompressione GPU: parte del lavoro può spostarsi dalla CPU al calcolo GPU massivamente parallelo.",{},{"id":645,"data":646,"type":572,"tunes":648},"b4937d330d",{"text":647,"level":47},"Cosa aggiunge DirectStorage 1.4",{},{"id":650,"data":651,"type":544,"tunes":653},"15fbbac723",{"text":652},"DirectStorage 1.4 aggiunge Zstandard, solitamente scritto Zstd, come formato di compressione supportato.",{},{"id":655,"data":656,"type":544,"tunes":658},"9c19185ae4",{"text":657},"Microsoft ha scelto Zstd perché combina forti rapporti di compressione, buone prestazioni di decompressione, ampia disponibilità software e hardware e un'adozione diffusa.",{},{"id":660,"data":661,"type":544,"tunes":663},"431523b335",{"text":662},"Il cambiamento importante è che Zstd è integrato nel framework di decompressione di DirectStorage con percorsi sia CPU che GPU.",{},{"id":665,"data":666,"type":693,"tunes":694},"940098d2af",{"rows":667,"title":684,"layout":685,"columns":686},[668,672,676,680],{"id":669,"label":670,"values":671},"execution","Dove viene eseguita",[13,13],{"id":673,"label":674,"values":675},"advantage","Vantaggio potenziale",[13,13],{"id":677,"label":678,"values":679},"cost","Costo principale",[13,13],{"id":681,"label":682,"values":683},"best","Scelta migliore",[13,13],"Decompressione CPU vs GPU","table",[687,690],{"id":688,"label":689},"cpu","Decompressione CPU",{"id":691,"label":692},"gpu","Decompressione GPU","comparison",{},{"id":696,"data":697,"type":572,"tunes":699},"c6262b2b30",{"text":698,"level":47},"La decompressione GPU costa comunque risorse GPU",{},{"id":701,"data":702,"type":544,"tunes":704},"b4cde1abf8",{"text":703},"La decompressione GPU non è gratuita.",{},{"id":706,"data":707,"type":544,"tunes":709},"9a58b4b286",{"text":708},"DirectStorage utilizza buffer di staging nella VRAM per coordinare l'input compresso e l'output decompresso. Microsoft avverte che un buffer di staging troppo grande può sottrarre memoria al rendering, mentre uno troppo piccolo può ridurre la velocità effettiva perché le richieste devono attendere.",{},{"id":711,"data":712,"type":544,"tunes":714},"4a44c060ae",{"text":713},"Quindi la decompressione GPU crea un altro problema di bilanciamento: ridurre il lavoro della CPU senza rubare troppa memoria GPU o potenza di calcolo al rendering.",{},{"id":716,"data":717,"type":722,"tunes":723},"3f3babfc82",{"url":718,"title":719,"excerpt":720,"ctaLabel":721},"https:\u002F\u002Ffigure.rocks\u002Fit\u002Fblog\u002Fvram-usage-is-not-vram-requirement-why-a-full-memory-meter-does-not-tell-the-whole-story","L'utilizzo della VRAM non è il requisito di VRAM: perché un misuratore di memoria pieno non racconta tutta la storia","Perché la capacità della VRAM, i budget di residenza e i working set contano più di un singolo numero di utilizzo della memoria.","Leggi la guida sulla VRAM","referralArticle",{},{"id":725,"data":726,"type":572,"tunes":728},"a942fbe973",{"text":727,"level":47},"Perché Zstd è importante rispetto alla compressione DirectStorage precedente",{},{"id":730,"data":731,"type":544,"tunes":733},"ef8a3b3ba5",{"text":732},"DirectStorage supportava già GDeflate, un formato di compressione progettato per la decompressione parallela su GPU.",{},{"id":735,"data":736,"type":544,"tunes":738},"84da708009",{"text":737},"Zstd aggiunge un'opzione diversa: uno standard di compressione aperto ampiamente utilizzato con forti rapporti di compressione e strumenti estesi.",{},{"id":740,"data":741,"type":544,"tunes":743},"e402caab8b",{"text":742},"Microsoft sta anche pubblicando uno shader di calcolo per la decompressione GPU Zstd open source come base che i fornitori di GPU possono ottimizzare ulteriormente.",{},{"id":745,"data":746,"type":544,"tunes":748},"6ff4e34bf6",{"text":747},"Lo shader iniziale è ottimizzato per blocchi di 256 KB o inferiori, il che corrisponde ai comuni schemi di packaging dei giochi orientati allo streaming.",{},{"id":750,"data":751,"type":572,"tunes":753},"4328a25e36",{"text":752,"level":47},"Il triangolo dei costi dello streaming degli asset",{},{"id":755,"data":756,"type":693,"tunes":777},"3a792d45ba",{"rows":757,"title":770,"layout":685,"columns":771},[758,762,766],{"id":759,"label":760,"values":761},"storage","Dimensione dell'installazione",[13,13],{"id":763,"label":764,"values":765},"io","I\u002FO di archiviazione",[13,13],{"id":767,"label":768,"values":769},"runtime","Lavoro CPU\u002FGPU a runtime",[13,13],"La compressione modifica tre costi diversi",[772,775],{"id":773,"label":774},"benefit","Cosa può ridurre la compressione",{"id":677,"label":776},"Cosa può aumentare",{},{"id":779,"data":780,"type":572,"tunes":782},"5d30690c89",{"text":781,"level":47},"Cosa fa la Game Asset Conditioning Library",{},{"id":784,"data":785,"type":544,"tunes":787},"25b7db1be9",{"text":786},"Microsoft ha introdotto la Game Asset Conditioning Library, o GACL, insieme a DirectStorage 1.4.",{},{"id":789,"data":790,"type":544,"tunes":792},"c68144d961",{"text":791},"GACL non sostituisce Zstd. Prepara alcuni asset di gioco in modo che Zstd possa comprimerli in modo più efficace.",{},{"id":794,"data":795,"type":544,"tunes":797},"4a4b7bfc11",{"text":796},"I dati delle texture sono un obiettivo principale perché le texture spesso costituiscono una grande parte della dimensione dei pacchetti dei giochi moderni.",{},{"id":799,"data":800,"type":572,"tunes":802},"7fe0a2d504",{"text":801,"level":47},"Cosa significa \"conditioning\" in parole semplici",{},{"id":804,"data":805,"type":544,"tunes":807},"96a5e493d3",{"text":806},"Conditioning significa riorganizzare o modificare leggermente i dati prima della compressione, in modo che il compressore possa trovare schemi più utili.",{},{"id":809,"data":810,"type":544,"tunes":812},"cb4a8a997c",{"text":811},"Per le texture con compressione a blocchi, GACL può riorganizzare la disposizione dei byte prima della compressione Zstd. DirectStorage inverte quella trasformazione dopo la decompressione.",{},{"id":814,"data":815,"type":544,"tunes":817},"55267a13ca",{"text":816},"GACL include anche tecniche di riduzione dell'entropia che possono semplificare deliberatamente alcune informazioni delle texture per comprimerle meglio.",{},{"id":819,"data":820,"type":552,"tunes":824},"540deb670e",{"body":821,"title":822,"variant":823},"GACL include sia \u003Cstrong>trasformazioni lossless\u003C\u002Fstrong> sia \u003Cstrong>ottimizzazione lossy delle texture\u003C\u002Fstrong>. Una compressione migliore può talvolta derivare dall'accettare una quantità controllata di errore visivo.","Non tutte le modalità di conditioning sono lossless","warning",{},{"id":826,"data":827,"type":572,"tunes":829},"9836ed86ae",{"text":828,"level":47},"Dove entra il machine learning in GACL",{},{"id":831,"data":832,"type":544,"tunes":834},"4d663da4d4",{"text":833},"La Component-Level Entropy Reduction di Microsoft, o CLER, utilizza il machine learning come parte del processo per ridurre l'entropia delle texture.",{},{"id":836,"data":837,"type":544,"tunes":839},"79c4cad150",{"text":838},"Lo scopo non è generare texture a runtime. Il lavoro di ML fa parte della preparazione dei dati delle texture affinché la rappresentazione compressa finale possa diventare più piccola mantenendo una qualità visiva accettabile.",{},{"id":841,"data":842,"type":544,"tunes":844},"99085e4c77",{"text":843},"Questo rende GACL un'ottimizzazione della pipeline dei contenuti piuttosto che un sistema di AI generativa in-game.",{},{"id":846,"data":847,"type":572,"tunes":849},"14d13e675d",{"text":848,"level":47},"Fino al 50% di compressione migliore non significa che ogni gioco diventi il 50% più piccolo",{},{"id":851,"data":852,"type":544,"tunes":854},"aaeb908807",{"text":853},"Microsoft afferma che GACL può offrire fino a un miglioramento del 50% nei rapporti di compressione Zstd per asset adatti.",{},{"id":856,"data":857,"type":544,"tunes":859},"57085743b1",{"text":858},"Questo non equivale a dire che un'intera installazione di gioco si riduca del 50%.",{},{"id":861,"data":862,"type":544,"tunes":864},"8e4feee49d",{"text":863},"L'impatto reale dipende da quali asset vengono condizionati, quanto sono comprimibili, quale proporzione del gioco rappresentano e se le tecniche lossy sono accettabili.",{},{"id":866,"data":867,"type":572,"tunes":869},"2cd6a2b721",{"text":868,"level":47},"Il test delle affermazioni sulla compressione",{},{"id":871,"data":872,"type":595,"tunes":893},"5537c18816",{"steps":873,"title":892,"orientation":594},[874,877,880,883,886,889],{"label":875,"description":876},"1. Chiedi cosa viene compresso","Solo texture, tutti gli asset o l'installazione completa?",{"label":878,"description":879},"2. Chiedi qual è la baseline di confronto","Dati non compressi, GDeflate, vecchie impostazioni Zstd o un altro formato pacchettizzato?",{"label":881,"description":882},"3. Verifica se la tecnica è lossless","Un risultato più piccolo può includere una perdita di qualità controllata.",{"label":884,"description":885},"4. Separa la dimensione del file dalle prestazioni di caricamento","Una compressione migliore riduce i byte letti ma la decompressione costa comunque tempo.",{"label":887,"description":888},"5. Verifica il percorso CPU\u002FGPU","Gli stessi dati compressi possono comportarsi diversamente a seconda di dove viene eseguita la decompressione.",{"label":890,"description":891},"6. Misura l'intera pipeline","Throughput di archiviazione, tempo di decompressione, uso della memoria di staging e disponibilità finale degli asset sono tutti importanti.","Come leggere correttamente un'affermazione sulla compressione dei giochi",{},{"id":895,"data":896,"type":572,"tunes":898},"0ada530e08",{"text":897,"level":47},"Perché sostituire le DLL di DirectStorage in un gioco non abilita Zstd",{},{"id":900,"data":901,"type":544,"tunes":903},"4da8a4e81a",{"text":902},"Questo è un malinteso particolarmente importante.",{},{"id":905,"data":906,"type":544,"tunes":908},"2e03f9f3b4",{"text":907},"Microsoft ha risposto esplicitamente a questo dopo l'annuncio di DirectStorage 1.4: sostituire i file DLL di DirectStorage in un gioco esistente non attiva le nuove funzionalità in anteprima.",{},{"id":910,"data":911,"type":544,"tunes":913},"f62e4bf14a",{"text":912},"Gli asset del gioco devono essere creati e compressi con Zstd durante il processo di build, il condizionamento GACL opzionale deve avvenire prima della distribuzione, e il gioco stesso deve chiamare le API DirectStorage pertinenti.",{},{"id":915,"data":916,"type":552,"tunes":919},"0eb0a84749",{"body":917,"title":918,"variant":602},"I file su disco, il loro formato di compressione e l'integrazione con il motore devono essere già progettati per DirectStorage 1.4.","Una DLL di runtime non può riscrivere la pipeline degli asset del gioco",{},{"id":921,"data":922,"type":572,"tunes":924},"acb0fb0c0e",{"text":923,"level":47},"Perché SSD più veloci non eliminano il costo di decompressione",{},{"id":926,"data":927,"type":544,"tunes":929},"17a8cecdd3",{"text":928},"Un SSD estremamente veloce può ridurre il tempo necessario per leggere i byte compressi, ma non elimina il tempo richiesto per trasformare quei byte in asset utilizzabili.",{},{"id":931,"data":932,"type":544,"tunes":934},"b4fa0ab639",{"text":933},"Man mano che lo storage diventa più veloce, l'importanza relativa di decompressione, preparazione degli asset, upload sulla GPU ed elaborazione lato motore diventa maggiore.",{},{"id":936,"data":937,"type":544,"tunes":939},"8e24a111c3",{"text":938},"Ecco esattamente perché DirectStorage si è evoluto oltre il semplice I\u002FO.",{},{"id":941,"data":942,"type":572,"tunes":944},"06446ca61f",{"text":943,"level":47},"Il test della pipeline di caricamento",{},{"id":946,"data":947,"type":595,"tunes":968},"79ccb70f4a",{"steps":948,"title":967,"orientation":594},[949,952,955,958,961,964],{"label":950,"description":951},"1. Misurare il tempo di lettura dello storage","Quanto tempo occorre per fornire i byte dell'asset compresso?",{"label":953,"description":954},"2. Misurare la decompressione","Quanto tempo di CPU o GPU viene speso per espandere i dati?",{"label":956,"description":957},"3. Misurare accodamento e staging","Le richieste sono in attesa perché i buffer di staging o le code della GPU sono saturi?",{"label":959,"description":960},"4. Misurare upload e creazione delle risorse","Quanto tempo passa prima che i dati decompressi diventino una risorsa GPU utilizzabile?",{"label":962,"description":963},"5. Misurare il lavoro lato motore","Shader, creazione di oggetti, configurazione del mondo e registrazione degli asset possono ancora dominare il caricamento.",{"label":965,"description":966},"6. Correggere la fase più lenta","Un SSD più veloce aiuta solo quando l'I\u002FO dello storage è effettivamente la parte limitante.","Come diagnosticare se lo storage è davvero il collo di bottiglia",{},{"id":970,"data":971,"type":572,"tunes":973},"571576014a",{"text":972,"level":47},"Perché questo è importante per lo streaming open-world",{},{"id":975,"data":976,"type":544,"tunes":978},"806314e0fe",{"text":977},"I giochi open-world spostano continuamente dati degli asset mentre il giocatore attraversa la mappa.",{},{"id":980,"data":981,"type":544,"tunes":983},"7bb8a063e0",{"text":982},"Ciò significa che lo streaming degli asset non riguarda solo la riduzione di una schermata di caricamento. La pipeline deve fornire, decomprimere e preparare i dati mentre il gameplay continua.",{},{"id":985,"data":986,"type":544,"tunes":988},"012c8cf647",{"text":987},"Un codec con un forte rapporto di compressione può ridurre il numero di byte prelevati dallo storage, mentre una decompressione GPU veloce può aiutare a mantenere il tempo CPU disponibile per la simulazione.",{},{"id":990,"data":991,"type":544,"tunes":993},"f978c83ceb",{"text":992},"Ma se la GPU stessa è già satura, spostare lì il lavoro di decompressione potrebbe richiedere un'attenta pianificazione.",{},{"id":995,"data":996,"type":572,"tunes":998},"ba6e748605",{"text":997,"level":47},"DirectStorage 1.4 migliora anche la visibilità della pianificazione GPU",{},{"id":1000,"data":1001,"type":544,"tunes":1003},"d858b01445",{"text":1002},"DirectStorage 1.4 aggiunge il supporto D3D12 CreatorID per le code di comandi interne che gestisce.",{},{"id":1005,"data":1006,"type":544,"tunes":1008},"34afe0ff59",{"text":1007},"Lo scopo è aiutare i carichi di lavoro DirectStorage a partecipare in modo più prevedibile al raggruppamento delle code D3D12 e alla pianificazione dell'esecuzione GPU.",{},{"id":1010,"data":1011,"type":544,"tunes":1013},"37941fcc6e",{"text":1012},"Questo è importante perché la decompressione ora compete per lo stesso ecosistema GPU del rendering e di altri lavori di calcolo.",{},{"id":1015,"data":1016,"type":572,"tunes":1018},"b48d791481",{"text":1017,"level":47},"Cosa faranno in seguito i produttori di GPU",{},{"id":1020,"data":1021,"type":544,"tunes":1023},"8e92b40d82",{"text":1022},"Microsoft afferma che AMD, Intel, NVIDIA e Qualcomm stanno lavorando a ottimizzazioni Zstd specifiche per hardware e driver.",{},{"id":1025,"data":1026,"type":544,"tunes":1028},"fe70c63125",{"text":1027},"AMD e NVIDIA hanno indicato pubblicamente un supporto ottimizzato previsto per la seconda metà del 2026, mentre Intel e Qualcomm hanno anche descritto il lavoro in corso sulla piattaforma.",{},{"id":1030,"data":1031,"type":544,"tunes":1033},"b32885f619",{"text":1032},"Ciò significa che lo shader GPU pubblico di DirectStorage è una base di riferimento, non necessariamente il percorso di prestazioni finale per l'hardware futuro.",{},{"id":1035,"data":1036,"type":572,"tunes":1038},"5bdd394fbe",{"text":1037,"level":47},"Cosa cambierebbe questa risposta?",{},{"id":1040,"data":1041,"type":544,"tunes":1043},"df440ec666",{"text":1042},"DirectStorage 1.4 è ancora un'anteprima pubblica. L'API finale, le prestazioni dello shader Zstd, il supporto GACL e i percorsi dei driver ottimizzati dai fornitori possono tutti cambiare.",{},{"id":1045,"data":1046,"type":544,"tunes":1048},"032ea5afdc",{"text":1047},"Se i futuri dispositivi di archiviazione aggiungessero una decompressione hardware standardizzata integrata nella pipeline delle risorse del PC, la netta separazione tra \"letture SSD\" e \"decompressione CPU\u002FGPU\" potrebbe diventare meno assoluta. Non è il modello normale di DirectStorage 1.4 oggi.",{},{"id":1050,"data":1051,"type":572,"tunes":1053},"76422e49b2",{"text":1052,"level":47},"Limitazioni",{},{"id":1055,"data":1056,"type":544,"tunes":1058},"014e638d31",{"text":1057},"Questo articolo spiega l'attuale architettura di anteprima pubblica di DirectStorage 1.4 di Microsoft. Non afferma che ogni gioco che utilizza DirectStorage userà Zstd, la decompressione GPU o GACL.",{},{"id":1060,"data":1061,"type":544,"tunes":1063},"7dd689e651",{"text":1062},"Le dichiarazioni di Microsoft sul rapporto di compressione e sulle prestazioni sono affermazioni tecnologiche del fornitore della piattaforma. I risultati reali nei giochi dipendono dal mix di risorse, dalle impostazioni di compressione, dall'hardware, dai driver e dall'integrazione nel motore.",{},{"id":1065,"data":1066,"type":572,"tunes":1068},"b7bbbdd494",{"text":1067,"level":47},"Conclusione",{},{"id":1070,"data":1071,"type":544,"tunes":1073},"6c07e0bffd",{"text":1072},"DirectStorage 1.4 è più facile da capire una volta separati i compiti.",{},{"id":1075,"data":1076,"type":544,"tunes":1078},"325ad9669f",{"text":1077},"L'SSD sposta i byte compressi. DirectStorage pianifica il trasferimento. Zstd definisce come i dati sono compressi. La CPU o la GPU li decomprime. GACL può preparare alcune risorse in modo che Zstd le comprima più efficacemente. Il motore di gioco consuma quindi la risorsa finita.",{},{"id":1080,"data":1081,"type":544,"tunes":1083},"0a7990db5b",{"text":1082},"Un SSD più veloce è solo una parte di quella catena.",{},{"id":1085,"data":1086,"type":572,"tunes":1088},"b9347644f5",{"text":1087,"level":47},"FAQ",{},{"id":1090,"data":1091,"type":1118,"tunes":1119},"4453ce2f6c",{"items":1092,"title":1117},[1093,1097,1101,1105,1109,1113],{"id":1094,"answer":1095,"question":1096},"faq1","No. L'SSD legge i dati compressi. DirectStorage coordina l'I\u002FO, mentre la CPU o la GPU esegue la decompressione.","DirectStorage fa decomprimere le risorse di gioco all'SSD?",{"id":1098,"answer":1099,"question":1100},"faq2","L'anteprima pubblica aggiunge la compressione Zstandard, il supporto alla decompressione CPU\u002FGPU, l'integrazione con la Game Asset Conditioning Library e una migliore identificazione delle code D3D12.","Cosa c'è di nuovo in DirectStorage 1.4?",{"id":1102,"answer":1103,"question":1104},"faq3","No. Microsoft afferma che le risorse devono essere create con Zstd\u002FGACL e il gioco deve utilizzare esplicitamente le nuove API.","Posso sostituire la DLL di DirectStorage di un gioco per abilitare Zstd?",{"id":1106,"answer":1107,"question":1108},"faq4","No. Utilizza calcolo GPU, larghezza di banda e buffer di staging, sebbene possa ridurre il carico della CPU.","La decompressione GPU è gratuita?",{"id":1110,"answer":1111,"question":1112},"faq5","Condiziona le risorse di gioco, specialmente le texture, in modo che Zstd possa comprimerle più efficacemente. Alcuni metodi sono lossless e altri lossy.","Cosa fa GACL?",{"id":1114,"answer":1115,"question":1116},"faq6","No. Il dato si applica a risorse condizionate adatte, non automaticamente all'intera installazione del gioco.","Una compressione migliore fino al 50% significa che un gioco diventa il 50% più piccolo?","DirectStorage 1.4 e Zstd in parole semplici","faq",{},{"id":1121,"data":1122,"type":572,"tunes":1124},"578cca7c13",{"text":1123,"level":47},"Glossario",{},{"id":1126,"data":1127,"type":1157,"tunes":1158},"314ad428b8",{"title":1128,"entries":1129},"Termini chiave di DirectStorage 1.4",[1130,1134,1138,1141,1145,1149,1153],{"term":1131,"anchor":1132,"definition":1133},"DirectStorage","directstorage","API della famiglia DirectX di Microsoft per I\u002FO ad alto throughput e decompressione delle risorse di gioco su Windows.",{"term":1135,"anchor":1136,"definition":1137},"Zstandard (Zstd)","zstd","Un formato di compressione aperto aggiunto a DirectStorage 1.4 per le risorse di gioco.",{"term":692,"anchor":1139,"definition":1140},"gpu-decompression","Espandere i dati compressi utilizzando il calcolo GPU invece di eseguire tutta la decompressione sulla CPU.",{"term":1142,"anchor":1143,"definition":1144},"Buffer di staging","staging-buffer","Memoria GPU temporanea utilizzata da DirectStorage per coordinare i flussi di dati compressi e decompressi.",{"term":1146,"anchor":1147,"definition":1148},"GACL","gacl","La Game Asset Conditioning Library di Microsoft, che prepara le risorse per migliorare l'efficienza di compressione.",{"term":1150,"anchor":1151,"definition":1152},"Triangolo del costo dello streaming delle risorse","asset-streaming-cost-triangle","Un modello Figure Rocks che separa dimensione di archiviazione, traffico I\u002FO e costo di decompressione a runtime.",{"term":1154,"anchor":1155,"definition":1156},"Test delle affermazioni sulla compressione","compression-claim-test","Una lista di controllo Figure Rocks per interpretare le affermazioni sulla compressione verificando l'ambito delle risorse, la base di riferimento, la perdita di qualità e il costo a runtime.","glossary",{},{"id":1160,"data":1161,"type":572,"tunes":1163},"ba9a367e9e",{"text":1162,"level":47},"Fonti primarie",{},{"id":1165,"data":1166,"type":1172,"tunes":1173},"5b0ee9645d",{"link":1167,"meta":1168},"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fdirectstorage-1-4-release-adds-support-for-zstandard\u002F",{"image":1169,"title":1170,"description":1171},{"url":13},"Microsoft DirectX — DirectStorage 1.4 aggiunge Zstandard","Annuncio ufficiale di marzo 2026 che copre Zstd, decompressione CPU\u002FGPU, GACL, piani di ottimizzazione dei fornitori di GPU e l'anteprima di DirectStorage 1.4.","linkTool",{},{"id":1175,"data":1176,"type":1172,"tunes":1182},"99d1c9ab00",{"link":1177,"meta":1178},"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fdirectstorage-api-downloads\u002F",{"image":1179,"title":1180,"description":1181},{"url":13},"Microsoft DirectX — SDK e API DirectStorage","Pagina di rilascio ufficiale che elenca le funzionalità dell'anteprima di DirectStorage 1.4 e lo stato del pacchetto.",{},{"id":1184,"data":1185,"type":1172,"tunes":1191},"c6911b09dc",{"link":1186,"meta":1187},"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FDirectStorage",{"image":1188,"title":1189,"description":1190},{"url":13},"Microsoft — DirectStorage GitHub","Repository ufficiale contenente esempi, benchmark di decompressione GPU e linee guida per l'implementazione di DirectStorage.",{},{"id":1193,"data":1194,"type":1172,"tunes":1200},"01eb196732",{"link":1195,"meta":1196},"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FDirectStorage\u002Fblob\u002Fmain\u002FDocs\u002FDeveloperGuidance.md",{"image":1197,"title":1198,"description":1199},{"url":13},"Microsoft — Guida per sviluppatori DirectStorage","Guida ufficiale che spiega il flusso dei dati compressi, la decompressione GPU, i buffer di staging e i compromessi sulla memoria.",{},{"id":1202,"data":1203,"type":1172,"tunes":1209},"77679e7133",{"link":1204,"meta":1205},"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FGame-Asset-Conditioning-Library\u002Fblob\u002Fmain\u002FREADME.md",{"image":1206,"title":1207,"description":1208},{"url":13},"Microsoft — Game Asset Conditioning Library","Documentazione ufficiale che copre il condizionamento delle texture, Zstd, le trasformazioni shuffle e le tecniche di riduzione dell'entropia.",{},"2.31","DirectStorage 1.4 aggiunge la compressione Zstandard, la decompressione GPU e una nuova Game Asset Conditioning Library, ma l'SSD stesso è ancora solo una parte della pipeline di caricamento. Questa guida spiega cosa fanno effettivamente l'SSD, DirectStorage, la CPU, la GPU e il motore di gioco.","\u002Fuploads\u002F2026\u002F09\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do-1790405481526-fwnzz4.webp","directstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do-1790405481526-fwnzz4",false,"PUBLISHED","2026-09-26T02:49:00.000Z","2026-09-26T06:49:10.633Z","2026-09-26T07:04:11.521Z",{"en":1220,"de":1221,"sr":1222,"es":1223,"fr":1224,"it":1225,"ru":1226,"zh":1227},"\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","\u002Fde\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","\u002Fsr\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","\u002Fes\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","\u002Ffr\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","\u002Fit\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","\u002Fru\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","\u002Fzh\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do",[1229,1233,1237,1241],{"id":1230,"name":1231,"slug":1232},330,"Correzioni di streaming e IO","streaming-and-io-fixes",{"id":1234,"name":1235,"slug":1236},65,"Ritardi di I\u002FO e archiviazione","io-and-storage-stutter",{"id":1238,"name":1239,"slug":1240},237,"Streaming e IO","streaming-and-io",{"id":1242,"name":1243,"slug":1244},152,"VRAM e streaming","vram-and-streaming",{"id":283,"login":1246,"email":1247,"displayName":1248},"aleksandar","aleksandar@stajic.de","Aleksandar Stajic",[1250,1782],{"lang":8,"title":1251,"content":1252,"contentJson":1253,"excerpt":1781},"DirectStorage 1.4 Does Not Make Your SSD Decompress Games: What Zstd and GPU Decompression Actually Do","{\"time\":1790405876557,\"blocks\":[{\"id\":\"7b461210c1\",\"type\":\"paragraph\",\"data\":{\"text\":\"DirectStorage 1.4 adds Zstandard compression and GPU decompression support for game assets, but that does not mean your SSD is suddenly decompressing textures and models by itself. The storage drive moves compressed data. The CPU or GPU still performs the decompression work.\"},\"tunes\":{}},{\"id\":\"2f0f63271c\",\"type\":\"callout\",\"data\":{\"variant\":\"info\",\"title\":\"Direct answer\",\"body\":\"\u003Cstrong>Your SSD reads compressed game data. It does not normally decompress that data itself.\u003C\u002Fstrong> DirectStorage coordinates the path from storage to memory, while the CPU or GPU can handle decompression. DirectStorage 1.4 adds Zstandard as a new codec option and lets developers choose CPU or GPU decompression.\"},\"tunes\":{}},{\"id\":\"48a120727f\",\"type\":\"callout\",\"data\":{\"variant\":\"note\",\"title\":\"Current status\",\"body\":\"DirectStorage 1.4 is currently a \u003Cstrong>public preview\u003C\u002Fstrong>. Its Zstandard support and the Game Asset Conditioning Library are developer technologies that must be integrated into a game's build and runtime pipeline. Replacing DLL files in an existing game does not magically enable the new features.\"},\"tunes\":{}},{\"id\":\"2954eec7f8\",\"type\":\"tableOfContents\",\"data\":{\"title\":\"Contents\",\"minLevel\":2,\"maxLevel\":3},\"tunes\":{}},{\"id\":\"980168054a\",\"type\":\"header\",\"data\":{\"text\":\"The simplest way to understand the asset path\",\"level\":2},\"tunes\":{}},{\"id\":\"99210cf7a2\",\"type\":\"processFlow\",\"data\":{\"title\":\"What happens when a game loads compressed assets\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Game asset is stored compressed\",\"description\":\"Textures, geometry or other data are packaged in compressed form on the SSD.\"},{\"label\":\"2. SSD reads the compressed bytes\",\"description\":\"The NVMe drive moves those bytes quickly from storage into the system's I\u002FO path.\"},{\"label\":\"3. DirectStorage schedules the request\",\"description\":\"DirectStorage coordinates high-throughput reads and where the resulting data should go.\"},{\"label\":\"4. CPU or GPU decompresses\",\"description\":\"The compressed stream is expanded into the form needed by the game.\"},{\"label\":\"5. Asset becomes usable\",\"description\":\"The decompressed texture, buffer or other resource can then be consumed by the renderer or game systems.\"}]},\"tunes\":{}},{\"id\":\"d375ebe60b\",\"type\":\"callout\",\"data\":{\"variant\":\"success\",\"title\":\"The mental model\",\"body\":\"\u003Cstrong>SSD = moves compressed data.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>DirectStorage = coordinates the transfer.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>CPU\u002FGPU = decompresses.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Game engine = uses the result.\u003C\u002Fstrong>\"},\"tunes\":{}},{\"id\":\"dbcc92fffe\",\"type\":\"header\",\"data\":{\"text\":\"Why compress game assets at all?\",\"level\":2},\"tunes\":{}},{\"id\":\"fa9fc5a6fc\",\"type\":\"paragraph\",\"data\":{\"text\":\"Modern games contain enormous amounts of texture, geometry, audio and other data.\"},\"tunes\":{}},{\"id\":\"375587179a\",\"type\":\"paragraph\",\"data\":{\"text\":\"Storing every asset uncompressed would increase installation size and force the storage device to read more bytes for the same content.\"},\"tunes\":{}},{\"id\":\"6f00b8cbff\",\"type\":\"paragraph\",\"data\":{\"text\":\"Compression reduces how much data must be stored and transferred. The trade-off is that the data has to be decompressed before the game can use it.\"},\"tunes\":{}},{\"id\":\"1c00bf96d8\",\"type\":\"header\",\"data\":{\"text\":\"DirectStorage moves the bottleneck problem, it does not remove it\",\"level\":2},\"tunes\":{}},{\"id\":\"2fd37b24a2\",\"type\":\"paragraph\",\"data\":{\"text\":\"A fast NVMe drive can deliver compressed data much faster than older storage pipelines, but faster reads only help if the rest of the path can keep up.\"},\"tunes\":{}},{\"id\":\"d68045b6ad\",\"type\":\"paragraph\",\"data\":{\"text\":\"If the CPU has to decompress thousands of small asset chunks while also running game logic, physics and draw submission, decompression itself can become expensive.\"},\"tunes\":{}},{\"id\":\"a16eb295ca\",\"type\":\"paragraph\",\"data\":{\"text\":\"That is why DirectStorage supports GPU decompression: some of the work can move away from the CPU and onto massively parallel GPU compute.\"},\"tunes\":{}},{\"id\":\"b4937d330d\",\"type\":\"header\",\"data\":{\"text\":\"What DirectStorage 1.4 adds\",\"level\":2},\"tunes\":{}},{\"id\":\"15fbbac723\",\"type\":\"paragraph\",\"data\":{\"text\":\"DirectStorage 1.4 adds Zstandard, usually written Zstd, as a supported compression format.\"},\"tunes\":{}},{\"id\":\"9c19185ae4\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft chose Zstd because it combines strong compression ratios, good decompression performance, broad software and hardware availability, and widespread adoption.\"},\"tunes\":{}},{\"id\":\"431523b335\",\"type\":\"paragraph\",\"data\":{\"text\":\"The important change is that Zstd is integrated into DirectStorage's decompression framework with both CPU and GPU paths.\"},\"tunes\":{}},{\"id\":\"940098d2af\",\"type\":\"comparison\",\"data\":{\"title\":\"CPU vs GPU decompression\",\"layout\":\"table\",\"columns\":[{\"id\":\"cpu\",\"label\":\"CPU decompression\"},{\"id\":\"gpu\",\"label\":\"GPU decompression\"}],\"rows\":[{\"id\":\"execution\",\"label\":\"Where it runs\",\"values\":[\"\",\"\"]},{\"id\":\"advantage\",\"label\":\"Potential advantage\",\"values\":[\"\",\"\"]},{\"id\":\"cost\",\"label\":\"Main cost\",\"values\":[\"\",\"\"]},{\"id\":\"best\",\"label\":\"Best choice\",\"values\":[\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"c6262b2b30\",\"type\":\"header\",\"data\":{\"text\":\"GPU decompression still costs GPU resources\",\"level\":2},\"tunes\":{}},{\"id\":\"b4cde1abf8\",\"type\":\"paragraph\",\"data\":{\"text\":\"GPU decompression is not free.\"},\"tunes\":{}},{\"id\":\"9a58b4b286\",\"type\":\"paragraph\",\"data\":{\"text\":\"DirectStorage uses staging buffers in VRAM to coordinate compressed input and decompressed output. Microsoft warns that an oversized staging buffer can take memory away from rendering, while one that is too small can reduce throughput because requests have to wait.\"},\"tunes\":{}},{\"id\":\"4a44c060ae\",\"type\":\"paragraph\",\"data\":{\"text\":\"So GPU decompression creates another balancing problem: reduce CPU work without stealing too much GPU memory or compute from rendering.\"},\"tunes\":{}},{\"id\":\"3f3babfc82\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Ffigure.rocks\u002Fblog\u002Fvram-usage-is-not-vram-requirement-why-a-full-memory-meter-does-not-tell-the-whole-story\",\"title\":\"VRAM Usage Is Not VRAM Requirement: Why a Full Memory Meter Does Not Tell the Whole Story\",\"excerpt\":\"Why VRAM capacity, residency budgets and working sets matter more than one memory-usage number.\",\"ctaLabel\":\"Read the VRAM guide\"},\"tunes\":{}},{\"id\":\"a942fbe973\",\"type\":\"header\",\"data\":{\"text\":\"Why Zstd matters compared with older DirectStorage compression\",\"level\":2},\"tunes\":{}},{\"id\":\"ef8a3b3ba5\",\"type\":\"paragraph\",\"data\":{\"text\":\"DirectStorage already supported GDeflate, a compression format designed for parallel GPU decompression.\"},\"tunes\":{}},{\"id\":\"84da708009\",\"type\":\"paragraph\",\"data\":{\"text\":\"Zstd adds a different option: a broadly used open compression standard with strong compression ratios and extensive tooling.\"},\"tunes\":{}},{\"id\":\"e402caab8b\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft is also publishing an open-source GPU Zstd decompression compute shader as a baseline that GPU vendors can optimize further.\"},\"tunes\":{}},{\"id\":\"6ff4e34bf6\",\"type\":\"paragraph\",\"data\":{\"text\":\"The initial shader is optimized around chunks of 256 KB or smaller, which matches common streaming-oriented game packaging patterns.\"},\"tunes\":{}},{\"id\":\"4328a25e36\",\"type\":\"header\",\"data\":{\"text\":\"The Asset Streaming Cost Triangle\",\"level\":2},\"tunes\":{}},{\"id\":\"3a792d45ba\",\"type\":\"comparison\",\"data\":{\"title\":\"Compression changes three different costs\",\"layout\":\"table\",\"columns\":[{\"id\":\"benefit\",\"label\":\"What compression can reduce\"},{\"id\":\"cost\",\"label\":\"What it can increase\"}],\"rows\":[{\"id\":\"storage\",\"label\":\"Installation size\",\"values\":[\"\",\"\"]},{\"id\":\"io\",\"label\":\"Storage I\u002FO\",\"values\":[\"\",\"\"]},{\"id\":\"runtime\",\"label\":\"Runtime CPU\u002FGPU work\",\"values\":[\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"5d30690c89\",\"type\":\"header\",\"data\":{\"text\":\"What the Game Asset Conditioning Library does\",\"level\":2},\"tunes\":{}},{\"id\":\"25b7db1be9\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft introduced the Game Asset Conditioning Library, or GACL, alongside DirectStorage 1.4.\"},\"tunes\":{}},{\"id\":\"c68144d961\",\"type\":\"paragraph\",\"data\":{\"text\":\"GACL does not replace Zstd. It prepares certain game assets so Zstd can compress them more effectively.\"},\"tunes\":{}},{\"id\":\"4a4b7bfc11\",\"type\":\"paragraph\",\"data\":{\"text\":\"Texture data is a major target because textures often make up a large share of modern game-package size.\"},\"tunes\":{}},{\"id\":\"7fe0a2d504\",\"type\":\"header\",\"data\":{\"text\":\"What “conditioning” means in plain English\",\"level\":2},\"tunes\":{}},{\"id\":\"96a5e493d3\",\"type\":\"paragraph\",\"data\":{\"text\":\"Conditioning means rearranging or slightly modifying the data before compression so the compressor can find more useful patterns.\"},\"tunes\":{}},{\"id\":\"cb4a8a997c\",\"type\":\"paragraph\",\"data\":{\"text\":\"For block-compressed textures, GACL can shuffle the byte layout before Zstd compression. DirectStorage reverses that transform after decompression.\"},\"tunes\":{}},{\"id\":\"55267a13ca\",\"type\":\"paragraph\",\"data\":{\"text\":\"GACL also includes entropy-reduction techniques that can deliberately simplify some texture information to make it compress better.\"},\"tunes\":{}},{\"id\":\"540deb670e\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"Not every conditioning mode is lossless\",\"body\":\"GACL includes both \u003Cstrong>lossless transforms\u003C\u002Fstrong> and \u003Cstrong>lossy texture optimization\u003C\u002Fstrong>. Better compression can sometimes come from accepting a controlled amount of visual error.\"},\"tunes\":{}},{\"id\":\"9836ed86ae\",\"type\":\"header\",\"data\":{\"text\":\"Where machine learning enters GACL\",\"level\":2},\"tunes\":{}},{\"id\":\"4d663da4d4\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft's Component-Level Entropy Reduction, or CLER, uses machine learning as part of the process for reducing texture entropy.\"},\"tunes\":{}},{\"id\":\"79c4cad150\",\"type\":\"paragraph\",\"data\":{\"text\":\"The purpose is not to generate textures at runtime. The ML work is part of preparing texture data so the final compressed representation can become smaller while keeping acceptable visual quality.\"},\"tunes\":{}},{\"id\":\"99085e4c77\",\"type\":\"paragraph\",\"data\":{\"text\":\"That makes GACL a content-pipeline optimization rather than an in-game generative AI system.\"},\"tunes\":{}},{\"id\":\"14d13e675d\",\"type\":\"header\",\"data\":{\"text\":\"Up to 50% better compression does not mean every game becomes 50% smaller\",\"level\":2},\"tunes\":{}},{\"id\":\"aaeb908807\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft says GACL can deliver up to a 50% improvement in Zstd compression ratios for suitable assets.\"},\"tunes\":{}},{\"id\":\"57085743b1\",\"type\":\"paragraph\",\"data\":{\"text\":\"That is not the same as saying an entire game installation shrinks by 50%.\"},\"tunes\":{}},{\"id\":\"8e4feee49d\",\"type\":\"paragraph\",\"data\":{\"text\":\"The real impact depends on which assets are conditioned, how compressible they are, what proportion of the game they represent and whether lossy techniques are acceptable.\"},\"tunes\":{}},{\"id\":\"2cd6a2b721\",\"type\":\"header\",\"data\":{\"text\":\"The Compression Claim Test\",\"level\":2},\"tunes\":{}},{\"id\":\"5537c18816\",\"type\":\"processFlow\",\"data\":{\"title\":\"How to read a game-compression claim correctly\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Ask what is being compressed\",\"description\":\"Textures only, all assets, or the complete installation?\"},{\"label\":\"2. Ask what the comparison baseline is\",\"description\":\"Uncompressed data, GDeflate, old Zstd settings or another packaged format?\"},{\"label\":\"3. Check whether the technique is lossless\",\"description\":\"A smaller result may include controlled quality loss.\"},{\"label\":\"4. Separate file size from load performance\",\"description\":\"Better compression reduces bytes read but decompression still costs time.\"},{\"label\":\"5. Check CPU\u002FGPU path\",\"description\":\"The same compressed data can behave differently depending on where decompression executes.\"},{\"label\":\"6. Measure the complete pipeline\",\"description\":\"Storage throughput, decompression time, staging-memory use and final asset readiness all matter.\"}]},\"tunes\":{}},{\"id\":\"0ada530e08\",\"type\":\"header\",\"data\":{\"text\":\"Why replacing DirectStorage DLLs in a game does not enable Zstd\",\"level\":2},\"tunes\":{}},{\"id\":\"4da8a4e81a\",\"type\":\"paragraph\",\"data\":{\"text\":\"This is an especially important misunderstanding.\"},\"tunes\":{}},{\"id\":\"2e03f9f3b4\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft explicitly answered this after the DirectStorage 1.4 announcement: replacing DirectStorage DLL files in an existing game does not activate the new preview features.\"},\"tunes\":{}},{\"id\":\"f62e4bf14a\",\"type\":\"paragraph\",\"data\":{\"text\":\"The game's assets have to be authored and compressed with Zstd during the build process, optional GACL conditioning has to happen before shipping, and the game itself has to call the relevant DirectStorage APIs.\"},\"tunes\":{}},{\"id\":\"0eb0a84749\",\"type\":\"callout\",\"data\":{\"variant\":\"success\",\"title\":\"A runtime DLL cannot rewrite the game's asset pipeline\",\"body\":\"The files on disk, their compression format and the engine integration must already be designed for DirectStorage 1.4.\"},\"tunes\":{}},{\"id\":\"acb0fb0c0e\",\"type\":\"header\",\"data\":{\"text\":\"Why faster SSDs do not remove decompression cost\",\"level\":2},\"tunes\":{}},{\"id\":\"17a8cecdd3\",\"type\":\"paragraph\",\"data\":{\"text\":\"An extremely fast SSD can reduce the time needed to read compressed bytes, but it does not eliminate the time required to turn those bytes into usable assets.\"},\"tunes\":{}},{\"id\":\"b4fa0ab639\",\"type\":\"paragraph\",\"data\":{\"text\":\"As storage becomes faster, the relative importance of decompression, asset preparation, GPU upload and engine-side processing becomes larger.\"},\"tunes\":{}},{\"id\":\"8e24a111c3\",\"type\":\"paragraph\",\"data\":{\"text\":\"That is exactly why DirectStorage has evolved beyond raw I\u002FO.\"},\"tunes\":{}},{\"id\":\"06446ca61f\",\"type\":\"header\",\"data\":{\"text\":\"The Load-Time Pipeline Test\",\"level\":2},\"tunes\":{}},{\"id\":\"79ccb70f4a\",\"type\":\"processFlow\",\"data\":{\"title\":\"How to diagnose whether storage is really the bottleneck\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Measure storage read time\",\"description\":\"How long does it take to deliver the compressed asset bytes?\"},{\"label\":\"2. Measure decompression\",\"description\":\"How much CPU or GPU time is spent expanding the data?\"},{\"label\":\"3. Measure queueing and staging\",\"description\":\"Are requests waiting because staging buffers or GPU queues are saturated?\"},{\"label\":\"4. Measure upload and resource creation\",\"description\":\"How long before the decompressed data becomes a usable GPU resource?\"},{\"label\":\"5. Measure engine-side work\",\"description\":\"Shaders, object creation, world setup and asset registration may still dominate loading.\"},{\"label\":\"6. Fix the slowest stage\",\"description\":\"A faster SSD only helps when storage I\u002FO is actually the limiting part.\"}]},\"tunes\":{}},{\"id\":\"571576014a\",\"type\":\"header\",\"data\":{\"text\":\"Why this matters for open-world streaming\",\"level\":2},\"tunes\":{}},{\"id\":\"806314e0fe\",\"type\":\"paragraph\",\"data\":{\"text\":\"Open-world games continuously move asset data as the player crosses the map.\"},\"tunes\":{}},{\"id\":\"7bb8a063e0\",\"type\":\"paragraph\",\"data\":{\"text\":\"That means asset streaming is not only about reducing a loading screen. The pipeline has to deliver, decompress and prepare data while gameplay continues.\"},\"tunes\":{}},{\"id\":\"012c8cf647\",\"type\":\"paragraph\",\"data\":{\"text\":\"A codec with a strong compression ratio can reduce the number of bytes pulled from storage, while fast GPU decompression can help keep CPU time available for simulation.\"},\"tunes\":{}},{\"id\":\"f978c83ceb\",\"type\":\"paragraph\",\"data\":{\"text\":\"But if the GPU itself is already saturated, moving decompression work there may need careful scheduling.\"},\"tunes\":{}},{\"id\":\"ba6e748605\",\"type\":\"header\",\"data\":{\"text\":\"DirectStorage 1.4 also improves GPU scheduling visibility\",\"level\":2},\"tunes\":{}},{\"id\":\"d858b01445\",\"type\":\"paragraph\",\"data\":{\"text\":\"DirectStorage 1.4 adds D3D12 CreatorID support for the internal command queues it manages.\"},\"tunes\":{}},{\"id\":\"34afe0ff59\",\"type\":\"paragraph\",\"data\":{\"text\":\"The purpose is to help DirectStorage workloads participate more predictably in D3D12 queue grouping and GPU execution scheduling.\"},\"tunes\":{}},{\"id\":\"37941fcc6e\",\"type\":\"paragraph\",\"data\":{\"text\":\"This matters because decompression is now competing for the same GPU ecosystem as rendering and other compute work.\"},\"tunes\":{}},{\"id\":\"b48d791481\",\"type\":\"header\",\"data\":{\"text\":\"What GPU vendors are doing next\",\"level\":2},\"tunes\":{}},{\"id\":\"8e92b40d82\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft says AMD, Intel, NVIDIA and Qualcomm are working on hardware- and driver-specific Zstd optimizations.\"},\"tunes\":{}},{\"id\":\"fe70c63125\",\"type\":\"paragraph\",\"data\":{\"text\":\"AMD and NVIDIA publicly indicated optimized support targeted for the second half of 2026, while Intel and Qualcomm also described ongoing platform work.\"},\"tunes\":{}},{\"id\":\"b32885f619\",\"type\":\"paragraph\",\"data\":{\"text\":\"That means the public DirectStorage GPU shader is a baseline, not necessarily the final performance path for future hardware.\"},\"tunes\":{}},{\"id\":\"5bdd394fbe\",\"type\":\"header\",\"data\":{\"text\":\"What would change this answer?\",\"level\":2},\"tunes\":{}},{\"id\":\"df440ec666\",\"type\":\"paragraph\",\"data\":{\"text\":\"DirectStorage 1.4 is still a public preview. The final API, Zstd shader performance, GACL support and vendor-optimized driver paths can all change.\"},\"tunes\":{}},{\"id\":\"032ea5afdc\",\"type\":\"paragraph\",\"data\":{\"text\":\"If future storage devices add standardized hardware decompression integrated into the PC asset pipeline, the clean separation between “SSD reads” and “CPU\u002FGPU decompresses” could become less absolute. That is not the normal DirectStorage 1.4 model today.\"},\"tunes\":{}},{\"id\":\"76422e49b2\",\"type\":\"header\",\"data\":{\"text\":\"Limitations\",\"level\":2},\"tunes\":{}},{\"id\":\"014e638d31\",\"type\":\"paragraph\",\"data\":{\"text\":\"This article explains Microsoft's current public DirectStorage 1.4 preview architecture. It does not claim that every game using DirectStorage will use Zstd, GPU decompression or GACL.\"},\"tunes\":{}},{\"id\":\"7dd689e651\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft's compression-ratio and performance statements are technology claims from the platform vendor. Real game results depend on the asset mix, compression settings, hardware, drivers and engine integration.\"},\"tunes\":{}},{\"id\":\"b7bbbdd494\",\"type\":\"header\",\"data\":{\"text\":\"Conclusion\",\"level\":2},\"tunes\":{}},{\"id\":\"6c07e0bffd\",\"type\":\"paragraph\",\"data\":{\"text\":\"DirectStorage 1.4 is easier to understand once the jobs are separated.\"},\"tunes\":{}},{\"id\":\"325ad9669f\",\"type\":\"paragraph\",\"data\":{\"text\":\"The SSD moves compressed bytes. DirectStorage schedules the transfer. Zstd defines how the data is compressed. The CPU or GPU decompresses it. GACL can prepare some assets so Zstd compresses them more effectively. The game engine then consumes the finished asset.\"},\"tunes\":{}},{\"id\":\"0a7990db5b\",\"type\":\"paragraph\",\"data\":{\"text\":\"A faster SSD is only one part of that chain.\"},\"tunes\":{}},{\"id\":\"b9347644f5\",\"type\":\"header\",\"data\":{\"text\":\"FAQ\",\"level\":2},\"tunes\":{}},{\"id\":\"4453ce2f6c\",\"type\":\"faq\",\"data\":{\"title\":\"DirectStorage 1.4 and Zstd in plain English\",\"items\":[{\"id\":\"faq1\",\"question\":\"Does DirectStorage make the SSD decompress game assets?\",\"answer\":\"No. The SSD reads compressed data. DirectStorage coordinates the I\u002FO, while the CPU or GPU performs decompression.\"},{\"id\":\"faq2\",\"question\":\"What is new in DirectStorage 1.4?\",\"answer\":\"The public preview adds Zstandard compression, CPU\u002FGPU decompression support, Game Asset Conditioning Library integration and improved D3D12 queue identification.\"},{\"id\":\"faq3\",\"question\":\"Can I replace a game's DirectStorage DLL to enable Zstd?\",\"answer\":\"No. Microsoft says the assets must be built with Zstd\u002FGACL and the game must explicitly use the new APIs.\"},{\"id\":\"faq4\",\"question\":\"Is GPU decompression free?\",\"answer\":\"No. It uses GPU compute, bandwidth and staging buffers, although it can reduce CPU load.\"},{\"id\":\"faq5\",\"question\":\"What does GACL do?\",\"answer\":\"It conditions game assets, especially textures, so Zstd can compress them more effectively. Some methods are lossless and some are lossy.\"},{\"id\":\"faq6\",\"question\":\"Does up to 50% better compression mean a game becomes 50% smaller?\",\"answer\":\"No. The figure applies to suitable conditioned assets, not automatically to the entire game installation.\"}]},\"tunes\":{}},{\"id\":\"578cca7c13\",\"type\":\"header\",\"data\":{\"text\":\"Glossary\",\"level\":2},\"tunes\":{}},{\"id\":\"314ad428b8\",\"type\":\"glossary\",\"data\":{\"title\":\"Key DirectStorage 1.4 terms\",\"entries\":[{\"term\":\"DirectStorage\",\"definition\":\"Microsoft's DirectX-family API for high-throughput game-asset I\u002FO and decompression on Windows.\",\"anchor\":\"directstorage\"},{\"term\":\"Zstandard (Zstd)\",\"definition\":\"An open compression format added to DirectStorage 1.4 for game assets.\",\"anchor\":\"zstd\"},{\"term\":\"GPU decompression\",\"definition\":\"Expanding compressed data using GPU compute instead of doing all decompression on the CPU.\",\"anchor\":\"gpu-decompression\"},{\"term\":\"Staging buffer\",\"definition\":\"Temporary GPU memory used by DirectStorage to coordinate compressed and decompressed data flows.\",\"anchor\":\"staging-buffer\"},{\"term\":\"GACL\",\"definition\":\"Microsoft's Game Asset Conditioning Library, which prepares assets to improve compression efficiency.\",\"anchor\":\"gacl\"},{\"term\":\"Asset Streaming Cost Triangle\",\"definition\":\"A Figure Rocks model separating storage size, I\u002FO traffic and runtime decompression cost.\",\"anchor\":\"asset-streaming-cost-triangle\"},{\"term\":\"Compression Claim Test\",\"definition\":\"A Figure Rocks checklist for interpreting compression claims by checking the asset scope, baseline, quality loss and runtime cost.\",\"anchor\":\"compression-claim-test\"}]},\"tunes\":{}},{\"id\":\"ba9a367e9e\",\"type\":\"header\",\"data\":{\"text\":\"Primary sources\",\"level\":2},\"tunes\":{}},{\"id\":\"5b0ee9645d\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fdirectstorage-1-4-release-adds-support-for-zstandard\u002F\",\"meta\":{\"title\":\"Microsoft DirectX — DirectStorage 1.4 Adds Zstandard\",\"description\":\"Official March 2026 announcement covering Zstd, CPU\u002FGPU decompression, GACL, GPU-vendor optimization plans and the DirectStorage 1.4 preview.\",\"image\":{\"url\":\"\"}}},\"tunes\":{}},{\"id\":\"99d1c9ab00\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fdirectstorage-api-downloads\u002F\",\"meta\":{\"title\":\"Microsoft DirectX — DirectStorage SDK & API\",\"description\":\"Official release page listing DirectStorage 1.4 preview features and package status.\",\"image\":{\"url\":\"\"}}},\"tunes\":{}},{\"id\":\"c6911b09dc\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FDirectStorage\",\"meta\":{\"title\":\"Microsoft — DirectStorage GitHub\",\"description\":\"Official repository containing samples, GPU decompression benchmarks and DirectStorage implementation guidance.\",\"image\":{\"url\":\"\"}}},\"tunes\":{}},{\"id\":\"01eb196732\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FDirectStorage\u002Fblob\u002Fmain\u002FDocs\u002FDeveloperGuidance.md\",\"meta\":{\"title\":\"Microsoft — DirectStorage Developer Guidance\",\"description\":\"Official guidance explaining compressed-data flow, GPU decompression, staging buffers and memory trade-offs.\",\"image\":{\"url\":\"\"}}},\"tunes\":{}},{\"id\":\"77679e7133\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002FGame-Asset-Conditioning-Library\u002Fblob\u002Fmain\u002FREADME.md\",\"meta\":{\"title\":\"Microsoft — Game Asset Conditioning Library\",\"description\":\"Official documentation covering texture conditioning, Zstd, shuffle transforms and entropy-reduction techniques.\",\"image\":{\"url\":\"\"}}},\"tunes\":{}}],\"version\":\"2.31.6\"}",{"time":1254,"blocks":1255,"version":1780},1790405876557,[1256,1260,1265,1270,1274,1278,1298,1303,1307,1311,1315,1319,1323,1327,1331,1335,1339,1343,1347,1351,1373,1377,1381,1385,1389,1396,1400,1404,1408,1412,1416,1420,1439,1443,1447,1451,1455,1459,1463,1467,1471,1476,1480,1484,1488,1492,1496,1500,1504,1508,1512,1535,1539,1543,1547,1551,1556,1560,1564,1568,1572,1576,1599,1603,1607,1611,1615,1619,1623,1627,1631,1635,1639,1643,1647,1651,1655,1659,1663,1667,1671,1675,1679,1683,1687,1691,1694,1717,1721,1743,1747,1754,1761,1767,1774],{"id":541,"data":1257,"type":544,"tunes":1259},{"text":1258},"DirectStorage 1.4 adds Zstandard compression and GPU decompression support for game assets, but that does not mean your SSD is suddenly decompressing textures and models by itself. The storage drive moves compressed data. The CPU or GPU still performs the decompression work.",{},{"id":547,"data":1261,"type":552,"tunes":1264},{"body":1262,"title":1263,"variant":551},"\u003Cstrong>Your SSD reads compressed game data. It does not normally decompress that data itself.\u003C\u002Fstrong> DirectStorage coordinates the path from storage to memory, while the CPU or GPU can handle decompression. DirectStorage 1.4 adds Zstandard as a new codec option and lets developers choose CPU or GPU decompression.","Direct answer",{},{"id":555,"data":1266,"type":552,"tunes":1269},{"body":1267,"title":1268,"variant":559},"DirectStorage 1.4 is currently a \u003Cstrong>public preview\u003C\u002Fstrong>. Its Zstandard support and the Game Asset Conditioning Library are developer technologies that must be integrated into a game's build and runtime pipeline. Replacing DLL files in an existing game does not magically enable the new features.","Current status",{},{"id":562,"data":1271,"type":566,"tunes":1273},{"title":1272,"maxLevel":565,"minLevel":47},"Contents",{},{"id":569,"data":1275,"type":572,"tunes":1277},{"text":1276,"level":47},"The simplest way to understand the asset path",{},{"id":575,"data":1279,"type":595,"tunes":1297},{"steps":1280,"title":1296,"orientation":594},[1281,1284,1287,1290,1293],{"label":1282,"description":1283},"1. Game asset is stored compressed","Textures, geometry or other data are packaged in compressed form on the SSD.",{"label":1285,"description":1286},"2. SSD reads the compressed bytes","The NVMe drive moves those bytes quickly from storage into the system's I\u002FO path.",{"label":1288,"description":1289},"3. DirectStorage schedules the request","DirectStorage coordinates high-throughput reads and where the resulting data should go.",{"label":1291,"description":1292},"4. CPU or GPU decompresses","The compressed stream is expanded into the form needed by the game.",{"label":1294,"description":1295},"5. Asset becomes usable","The decompressed texture, buffer or other resource can then be consumed by the renderer or game systems.","What happens when a game loads compressed assets",{},{"id":598,"data":1299,"type":552,"tunes":1302},{"body":1300,"title":1301,"variant":602},"\u003Cstrong>SSD = moves compressed data.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>DirectStorage = coordinates the transfer.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>CPU\u002FGPU = decompresses.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Game engine = uses the result.\u003C\u002Fstrong>","The mental model",{},{"id":605,"data":1304,"type":572,"tunes":1306},{"text":1305,"level":47},"Why compress game assets at all?",{},{"id":610,"data":1308,"type":544,"tunes":1310},{"text":1309},"Modern games contain enormous amounts of texture, geometry, audio and other data.",{},{"id":615,"data":1312,"type":544,"tunes":1314},{"text":1313},"Storing every asset uncompressed would increase installation size and force the storage device to read more bytes for the same content.",{},{"id":620,"data":1316,"type":544,"tunes":1318},{"text":1317},"Compression reduces how much data must be stored and transferred. The trade-off is that the data has to be decompressed before the game can use it.",{},{"id":625,"data":1320,"type":572,"tunes":1322},{"text":1321,"level":47},"DirectStorage moves the bottleneck problem, it does not remove it",{},{"id":630,"data":1324,"type":544,"tunes":1326},{"text":1325},"A fast NVMe drive can deliver compressed data much faster than older storage pipelines, but faster reads only help if the rest of the path can keep up.",{},{"id":635,"data":1328,"type":544,"tunes":1330},{"text":1329},"If the CPU has to decompress thousands of small asset chunks while also running game logic, physics and draw submission, decompression itself can become expensive.",{},{"id":640,"data":1332,"type":544,"tunes":1334},{"text":1333},"That is why DirectStorage supports GPU decompression: some of the work can move away from the CPU and onto massively parallel GPU compute.",{},{"id":645,"data":1336,"type":572,"tunes":1338},{"text":1337,"level":47},"What DirectStorage 1.4 adds",{},{"id":650,"data":1340,"type":544,"tunes":1342},{"text":1341},"DirectStorage 1.4 adds Zstandard, usually written Zstd, as a supported compression format.",{},{"id":655,"data":1344,"type":544,"tunes":1346},{"text":1345},"Microsoft chose Zstd because it combines strong compression ratios, good decompression performance, broad software and hardware availability, and widespread adoption.",{},{"id":660,"data":1348,"type":544,"tunes":1350},{"text":1349},"The important change is that Zstd is integrated into DirectStorage's decompression framework with both CPU and GPU paths.",{},{"id":665,"data":1352,"type":693,"tunes":1372},{"rows":1353,"title":1366,"layout":685,"columns":1367},[1354,1357,1360,1363],{"id":669,"label":1355,"values":1356},"Where it runs",[13,13],{"id":673,"label":1358,"values":1359},"Potential advantage",[13,13],{"id":677,"label":1361,"values":1362},"Main cost",[13,13],{"id":681,"label":1364,"values":1365},"Best choice",[13,13],"CPU vs GPU decompression",[1368,1370],{"id":688,"label":1369},"CPU decompression",{"id":691,"label":1371},"GPU decompression",{},{"id":696,"data":1374,"type":572,"tunes":1376},{"text":1375,"level":47},"GPU decompression still costs GPU resources",{},{"id":701,"data":1378,"type":544,"tunes":1380},{"text":1379},"GPU decompression is not free.",{},{"id":706,"data":1382,"type":544,"tunes":1384},{"text":1383},"DirectStorage uses staging buffers in VRAM to coordinate compressed input and decompressed output. Microsoft warns that an oversized staging buffer can take memory away from rendering, while one that is too small can reduce throughput because requests have to wait.",{},{"id":711,"data":1386,"type":544,"tunes":1388},{"text":1387},"So GPU decompression creates another balancing problem: reduce CPU work without stealing too much GPU memory or compute from rendering.",{},{"id":716,"data":1390,"type":722,"tunes":1395},{"url":1391,"title":1392,"excerpt":1393,"ctaLabel":1394},"https:\u002F\u002Ffigure.rocks\u002Fblog\u002Fvram-usage-is-not-vram-requirement-why-a-full-memory-meter-does-not-tell-the-whole-story","VRAM Usage Is Not VRAM Requirement: Why a Full Memory Meter Does Not Tell the Whole Story","Why VRAM capacity, residency budgets and working sets matter more than one memory-usage number.","Read the VRAM guide",{},{"id":725,"data":1397,"type":572,"tunes":1399},{"text":1398,"level":47},"Why Zstd matters compared with older DirectStorage compression",{},{"id":730,"data":1401,"type":544,"tunes":1403},{"text":1402},"DirectStorage already supported GDeflate, a compression format designed for parallel GPU decompression.",{},{"id":735,"data":1405,"type":544,"tunes":1407},{"text":1406},"Zstd adds a different option: a broadly used open compression standard with strong compression ratios and extensive tooling.",{},{"id":740,"data":1409,"type":544,"tunes":1411},{"text":1410},"Microsoft is also publishing an open-source GPU Zstd decompression compute shader as a baseline that GPU vendors can optimize further.",{},{"id":745,"data":1413,"type":544,"tunes":1415},{"text":1414},"The initial shader is optimized around chunks of 256 KB or smaller, which matches common streaming-oriented game packaging patterns.",{},{"id":750,"data":1417,"type":572,"tunes":1419},{"text":1418,"level":47},"The Asset Streaming Cost Triangle",{},{"id":755,"data":1421,"type":693,"tunes":1438},{"rows":1422,"title":1432,"layout":685,"columns":1433},[1423,1426,1429],{"id":759,"label":1424,"values":1425},"Installation size",[13,13],{"id":763,"label":1427,"values":1428},"Storage I\u002FO",[13,13],{"id":767,"label":1430,"values":1431},"Runtime CPU\u002FGPU work",[13,13],"Compression changes three different costs",[1434,1436],{"id":773,"label":1435},"What compression can reduce",{"id":677,"label":1437},"What it can increase",{},{"id":779,"data":1440,"type":572,"tunes":1442},{"text":1441,"level":47},"What the Game Asset Conditioning Library does",{},{"id":784,"data":1444,"type":544,"tunes":1446},{"text":1445},"Microsoft introduced the Game Asset Conditioning Library, or GACL, alongside DirectStorage 1.4.",{},{"id":789,"data":1448,"type":544,"tunes":1450},{"text":1449},"GACL does not replace Zstd. It prepares certain game assets so Zstd can compress them more effectively.",{},{"id":794,"data":1452,"type":544,"tunes":1454},{"text":1453},"Texture data is a major target because textures often make up a large share of modern game-package size.",{},{"id":799,"data":1456,"type":572,"tunes":1458},{"text":1457,"level":47},"What “conditioning” means in plain English",{},{"id":804,"data":1460,"type":544,"tunes":1462},{"text":1461},"Conditioning means rearranging or slightly modifying the data before compression so the compressor can find more useful patterns.",{},{"id":809,"data":1464,"type":544,"tunes":1466},{"text":1465},"For block-compressed textures, GACL can shuffle the byte layout before Zstd compression. DirectStorage reverses that transform after decompression.",{},{"id":814,"data":1468,"type":544,"tunes":1470},{"text":1469},"GACL also includes entropy-reduction techniques that can deliberately simplify some texture information to make it compress better.",{},{"id":819,"data":1472,"type":552,"tunes":1475},{"body":1473,"title":1474,"variant":823},"GACL includes both \u003Cstrong>lossless transforms\u003C\u002Fstrong> and \u003Cstrong>lossy texture optimization\u003C\u002Fstrong>. Better compression can sometimes come from accepting a controlled amount of visual error.","Not every conditioning mode is lossless",{},{"id":826,"data":1477,"type":572,"tunes":1479},{"text":1478,"level":47},"Where machine learning enters GACL",{},{"id":831,"data":1481,"type":544,"tunes":1483},{"text":1482},"Microsoft's Component-Level Entropy Reduction, or CLER, uses machine learning as part of the process for reducing texture entropy.",{},{"id":836,"data":1485,"type":544,"tunes":1487},{"text":1486},"The purpose is not to generate textures at runtime. The ML work is part of preparing texture data so the final compressed representation can become smaller while keeping acceptable visual quality.",{},{"id":841,"data":1489,"type":544,"tunes":1491},{"text":1490},"That makes GACL a content-pipeline optimization rather than an in-game generative AI system.",{},{"id":846,"data":1493,"type":572,"tunes":1495},{"text":1494,"level":47},"Up to 50% better compression does not mean every game becomes 50% smaller",{},{"id":851,"data":1497,"type":544,"tunes":1499},{"text":1498},"Microsoft says GACL can deliver up to a 50% improvement in Zstd compression ratios for suitable assets.",{},{"id":856,"data":1501,"type":544,"tunes":1503},{"text":1502},"That is not the same as saying an entire game installation shrinks by 50%.",{},{"id":861,"data":1505,"type":544,"tunes":1507},{"text":1506},"The real impact depends on which assets are conditioned, how compressible they are, what proportion of the game they represent and whether lossy techniques are acceptable.",{},{"id":866,"data":1509,"type":572,"tunes":1511},{"text":1510,"level":47},"The Compression Claim Test",{},{"id":871,"data":1513,"type":595,"tunes":1534},{"steps":1514,"title":1533,"orientation":594},[1515,1518,1521,1524,1527,1530],{"label":1516,"description":1517},"1. Ask what is being compressed","Textures only, all assets, or the complete installation?",{"label":1519,"description":1520},"2. Ask what the comparison baseline is","Uncompressed data, GDeflate, old Zstd settings or another packaged format?",{"label":1522,"description":1523},"3. Check whether the technique is lossless","A smaller result may include controlled quality loss.",{"label":1525,"description":1526},"4. Separate file size from load performance","Better compression reduces bytes read but decompression still costs time.",{"label":1528,"description":1529},"5. Check CPU\u002FGPU path","The same compressed data can behave differently depending on where decompression executes.",{"label":1531,"description":1532},"6. Measure the complete pipeline","Storage throughput, decompression time, staging-memory use and final asset readiness all matter.","How to read a game-compression claim correctly",{},{"id":895,"data":1536,"type":572,"tunes":1538},{"text":1537,"level":47},"Why replacing DirectStorage DLLs in a game does not enable Zstd",{},{"id":900,"data":1540,"type":544,"tunes":1542},{"text":1541},"This is an especially important misunderstanding.",{},{"id":905,"data":1544,"type":544,"tunes":1546},{"text":1545},"Microsoft explicitly answered this after the DirectStorage 1.4 announcement: replacing DirectStorage DLL files in an existing game does not activate the new preview features.",{},{"id":910,"data":1548,"type":544,"tunes":1550},{"text":1549},"The game's assets have to be authored and compressed with Zstd during the build process, optional GACL conditioning has to happen before shipping, and the game itself has to call the relevant DirectStorage APIs.",{},{"id":915,"data":1552,"type":552,"tunes":1555},{"body":1553,"title":1554,"variant":602},"The files on disk, their compression format and the engine integration must already be designed for DirectStorage 1.4.","A runtime DLL cannot rewrite the game's asset pipeline",{},{"id":921,"data":1557,"type":572,"tunes":1559},{"text":1558,"level":47},"Why faster SSDs do not remove decompression cost",{},{"id":926,"data":1561,"type":544,"tunes":1563},{"text":1562},"An extremely fast SSD can reduce the time needed to read compressed bytes, but it does not eliminate the time required to turn those bytes into usable assets.",{},{"id":931,"data":1565,"type":544,"tunes":1567},{"text":1566},"As storage becomes faster, the relative importance of decompression, asset preparation, GPU upload and engine-side processing becomes larger.",{},{"id":936,"data":1569,"type":544,"tunes":1571},{"text":1570},"That is exactly why DirectStorage has evolved beyond raw I\u002FO.",{},{"id":941,"data":1573,"type":572,"tunes":1575},{"text":1574,"level":47},"The Load-Time Pipeline Test",{},{"id":946,"data":1577,"type":595,"tunes":1598},{"steps":1578,"title":1597,"orientation":594},[1579,1582,1585,1588,1591,1594],{"label":1580,"description":1581},"1. Measure storage read time","How long does it take to deliver the compressed asset bytes?",{"label":1583,"description":1584},"2. Measure decompression","How much CPU or GPU time is spent expanding the data?",{"label":1586,"description":1587},"3. Measure queueing and staging","Are requests waiting because staging buffers or GPU queues are saturated?",{"label":1589,"description":1590},"4. Measure upload and resource creation","How long before the decompressed data becomes a usable GPU resource?",{"label":1592,"description":1593},"5. Measure engine-side work","Shaders, object creation, world setup and asset registration may still dominate loading.",{"label":1595,"description":1596},"6. Fix the slowest stage","A faster SSD only helps when storage I\u002FO is actually the limiting part.","How to diagnose whether storage is really the bottleneck",{},{"id":970,"data":1600,"type":572,"tunes":1602},{"text":1601,"level":47},"Why this matters for open-world streaming",{},{"id":975,"data":1604,"type":544,"tunes":1606},{"text":1605},"Open-world games continuously move asset data as the player crosses the map.",{},{"id":980,"data":1608,"type":544,"tunes":1610},{"text":1609},"That means asset streaming is not only about reducing a loading screen. The pipeline has to deliver, decompress and prepare data while gameplay continues.",{},{"id":985,"data":1612,"type":544,"tunes":1614},{"text":1613},"A codec with a strong compression ratio can reduce the number of bytes pulled from storage, while fast GPU decompression can help keep CPU time available for simulation.",{},{"id":990,"data":1616,"type":544,"tunes":1618},{"text":1617},"But if the GPU itself is already saturated, moving decompression work there may need careful scheduling.",{},{"id":995,"data":1620,"type":572,"tunes":1622},{"text":1621,"level":47},"DirectStorage 1.4 also improves GPU scheduling visibility",{},{"id":1000,"data":1624,"type":544,"tunes":1626},{"text":1625},"DirectStorage 1.4 adds D3D12 CreatorID support for the internal command queues it manages.",{},{"id":1005,"data":1628,"type":544,"tunes":1630},{"text":1629},"The purpose is to help DirectStorage workloads participate more predictably in D3D12 queue grouping and GPU execution scheduling.",{},{"id":1010,"data":1632,"type":544,"tunes":1634},{"text":1633},"This matters because decompression is now competing for the same GPU ecosystem as rendering and other compute work.",{},{"id":1015,"data":1636,"type":572,"tunes":1638},{"text":1637,"level":47},"What GPU vendors are doing next",{},{"id":1020,"data":1640,"type":544,"tunes":1642},{"text":1641},"Microsoft says AMD, Intel, NVIDIA and Qualcomm are working on hardware- and driver-specific Zstd optimizations.",{},{"id":1025,"data":1644,"type":544,"tunes":1646},{"text":1645},"AMD and NVIDIA publicly indicated optimized support targeted for the second half of 2026, while Intel and Qualcomm also described ongoing platform work.",{},{"id":1030,"data":1648,"type":544,"tunes":1650},{"text":1649},"That means the public DirectStorage GPU shader is a baseline, not necessarily the final performance path for future hardware.",{},{"id":1035,"data":1652,"type":572,"tunes":1654},{"text":1653,"level":47},"What would change this answer?",{},{"id":1040,"data":1656,"type":544,"tunes":1658},{"text":1657},"DirectStorage 1.4 is still a public preview. The final API, Zstd shader performance, GACL support and vendor-optimized driver paths can all change.",{},{"id":1045,"data":1660,"type":544,"tunes":1662},{"text":1661},"If future storage devices add standardized hardware decompression integrated into the PC asset pipeline, the clean separation between “SSD reads” and “CPU\u002FGPU decompresses” could become less absolute. That is not the normal DirectStorage 1.4 model today.",{},{"id":1050,"data":1664,"type":572,"tunes":1666},{"text":1665,"level":47},"Limitations",{},{"id":1055,"data":1668,"type":544,"tunes":1670},{"text":1669},"This article explains Microsoft's current public DirectStorage 1.4 preview architecture. It does not claim that every game using DirectStorage will use Zstd, GPU decompression or GACL.",{},{"id":1060,"data":1672,"type":544,"tunes":1674},{"text":1673},"Microsoft's compression-ratio and performance statements are technology claims from the platform vendor. Real game results depend on the asset mix, compression settings, hardware, drivers and engine integration.",{},{"id":1065,"data":1676,"type":572,"tunes":1678},{"text":1677,"level":47},"Conclusion",{},{"id":1070,"data":1680,"type":544,"tunes":1682},{"text":1681},"DirectStorage 1.4 is easier to understand once the jobs are separated.",{},{"id":1075,"data":1684,"type":544,"tunes":1686},{"text":1685},"The SSD moves compressed bytes. DirectStorage schedules the transfer. Zstd defines how the data is compressed. The CPU or GPU decompresses it. GACL can prepare some assets so Zstd compresses them more effectively. The game engine then consumes the finished asset.",{},{"id":1080,"data":1688,"type":544,"tunes":1690},{"text":1689},"A faster SSD is only one part of that chain.",{},{"id":1085,"data":1692,"type":572,"tunes":1693},{"text":1087,"level":47},{},{"id":1090,"data":1695,"type":1118,"tunes":1716},{"items":1696,"title":1715},[1697,1700,1703,1706,1709,1712],{"id":1094,"answer":1698,"question":1699},"No. The SSD reads compressed data. DirectStorage coordinates the I\u002FO, while the CPU or GPU performs decompression.","Does DirectStorage make the SSD decompress game assets?",{"id":1098,"answer":1701,"question":1702},"The public preview adds Zstandard compression, CPU\u002FGPU decompression support, Game Asset Conditioning Library integration and improved D3D12 queue identification.","What is new in DirectStorage 1.4?",{"id":1102,"answer":1704,"question":1705},"No. Microsoft says the assets must be built with Zstd\u002FGACL and the game must explicitly use the new APIs.","Can I replace a game's DirectStorage DLL to enable Zstd?",{"id":1106,"answer":1707,"question":1708},"No. It uses GPU compute, bandwidth and staging buffers, although it can reduce CPU load.","Is GPU decompression free?",{"id":1110,"answer":1710,"question":1711},"It conditions game assets, especially textures, so Zstd can compress them more effectively. Some methods are lossless and some are lossy.","What does GACL do?",{"id":1114,"answer":1713,"question":1714},"No. The figure applies to suitable conditioned assets, not automatically to the entire game installation.","Does up to 50% better compression mean a game becomes 50% smaller?","DirectStorage 1.4 and Zstd in plain English",{},{"id":1121,"data":1718,"type":572,"tunes":1720},{"text":1719,"level":47},"Glossary",{},{"id":1126,"data":1722,"type":1157,"tunes":1742},{"title":1723,"entries":1724},"Key DirectStorage 1.4 terms",[1725,1727,1729,1731,1734,1736,1739],{"term":1131,"anchor":1132,"definition":1726},"Microsoft's DirectX-family API for high-throughput game-asset I\u002FO and decompression on Windows.",{"term":1135,"anchor":1136,"definition":1728},"An open compression format added to DirectStorage 1.4 for game assets.",{"term":1371,"anchor":1139,"definition":1730},"Expanding compressed data using GPU compute instead of doing all decompression on the CPU.",{"term":1732,"anchor":1143,"definition":1733},"Staging buffer","Temporary GPU memory used by DirectStorage to coordinate compressed and decompressed data flows.",{"term":1146,"anchor":1147,"definition":1735},"Microsoft's Game Asset Conditioning Library, which prepares assets to improve compression efficiency.",{"term":1737,"anchor":1151,"definition":1738},"Asset Streaming Cost Triangle","A Figure Rocks model separating storage size, I\u002FO traffic and runtime decompression cost.",{"term":1740,"anchor":1155,"definition":1741},"Compression Claim Test","A Figure Rocks checklist for interpreting compression claims by checking the asset scope, baseline, quality loss and runtime cost.",{},{"id":1160,"data":1744,"type":572,"tunes":1746},{"text":1745,"level":47},"Primary sources",{},{"id":1165,"data":1748,"type":1172,"tunes":1753},{"link":1167,"meta":1749},{"image":1750,"title":1751,"description":1752},{"url":13},"Microsoft DirectX — DirectStorage 1.4 Adds Zstandard","Official March 2026 announcement covering Zstd, CPU\u002FGPU decompression, GACL, GPU-vendor optimization plans and the DirectStorage 1.4 preview.",{},{"id":1175,"data":1755,"type":1172,"tunes":1760},{"link":1177,"meta":1756},{"image":1757,"title":1758,"description":1759},{"url":13},"Microsoft DirectX — DirectStorage SDK & API","Official release page listing DirectStorage 1.4 preview features and package status.",{},{"id":1184,"data":1762,"type":1172,"tunes":1766},{"link":1186,"meta":1763},{"image":1764,"title":1189,"description":1765},{"url":13},"Official repository containing samples, GPU decompression benchmarks and DirectStorage implementation guidance.",{},{"id":1193,"data":1768,"type":1172,"tunes":1773},{"link":1195,"meta":1769},{"image":1770,"title":1771,"description":1772},{"url":13},"Microsoft — DirectStorage Developer Guidance","Official guidance explaining compressed-data flow, GPU decompression, staging buffers and memory trade-offs.",{},{"id":1202,"data":1775,"type":1172,"tunes":1779},{"link":1204,"meta":1776},{"image":1777,"title":1207,"description":1778},{"url":13},"Official documentation covering texture conditioning, Zstd, shuffle transforms and entropy-reduction techniques.",{},"2.31.6","DirectStorage 1.4 adds Zstandard compression, GPU decompression and a new Game Asset Conditioning Library, but the SSD itself is still only one part of the loading pipeline. This guide explains what the SSD, DirectStorage, CPU, GPU and game engine each actually do.",{"lang":7,"title":534,"content":536,"contentJson":1783,"excerpt":1211},{"time":538,"blocks":1784,"version":1210},[1785,1788,1791,1794,1797,1800,1809,1812,1815,1818,1821,1824,1827,1830,1833,1836,1839,1842,1845,1848,1863,1866,1869,1872,1875,1878,1881,1884,1887,1890,1893,1896,1909,1912,1915,1918,1921,1924,1927,1930,1933,1936,1939,1942,1945,1948,1951,1954,1957,1960,1963,1973,1976,1979,1982,1985,1988,1991,1994,1997,2000,2003,2013,2016,2019,2022,2025,2028,2031,2034,2037,2040,2043,2046,2049,2052,2055,2058,2061,2064,2067,2070,2073,2076,2079,2082,2085,2095,2098,2109,2112,2117,2122,2127,2132],{"id":541,"data":1786,"type":544,"tunes":1787},{"text":543},{},{"id":547,"data":1789,"type":552,"tunes":1790},{"body":549,"title":550,"variant":551},{},{"id":555,"data":1792,"type":552,"tunes":1793},{"body":557,"title":558,"variant":559},{},{"id":562,"data":1795,"type":566,"tunes":1796},{"title":564,"maxLevel":565,"minLevel":47},{},{"id":569,"data":1798,"type":572,"tunes":1799},{"text":571,"level":47},{},{"id":575,"data":1801,"type":595,"tunes":1808},{"steps":1802,"title":593,"orientation":594},[1803,1804,1805,1806,1807],{"label":579,"description":580},{"label":582,"description":583},{"label":585,"description":586},{"label":588,"description":589},{"label":591,"description":592},{},{"id":598,"data":1810,"type":552,"tunes":1811},{"body":600,"title":601,"variant":602},{},{"id":605,"data":1813,"type":572,"tunes":1814},{"text":607,"level":47},{},{"id":610,"data":1816,"type":544,"tunes":1817},{"text":612},{},{"id":615,"data":1819,"type":544,"tunes":1820},{"text":617},{},{"id":620,"data":1822,"type":544,"tunes":1823},{"text":622},{},{"id":625,"data":1825,"type":572,"tunes":1826},{"text":627,"level":47},{},{"id":630,"data":1828,"type":544,"tunes":1829},{"text":632},{},{"id":635,"data":1831,"type":544,"tunes":1832},{"text":637},{},{"id":640,"data":1834,"type":544,"tunes":1835},{"text":642},{},{"id":645,"data":1837,"type":572,"tunes":1838},{"text":647,"level":47},{},{"id":650,"data":1840,"type":544,"tunes":1841},{"text":652},{},{"id":655,"data":1843,"type":544,"tunes":1844},{"text":657},{},{"id":660,"data":1846,"type":544,"tunes":1847},{"text":662},{},{"id":665,"data":1849,"type":693,"tunes":1862},{"rows":1850,"title":684,"layout":685,"columns":1859},[1851,1853,1855,1857],{"id":669,"label":670,"values":1852},[13,13],{"id":673,"label":674,"values":1854},[13,13],{"id":677,"label":678,"values":1856},[13,13],{"id":681,"label":682,"values":1858},[13,13],[1860,1861],{"id":688,"label":689},{"id":691,"label":692},{},{"id":696,"data":1864,"type":572,"tunes":1865},{"text":698,"level":47},{},{"id":701,"data":1867,"type":544,"tunes":1868},{"text":703},{},{"id":706,"data":1870,"type":544,"tunes":1871},{"text":708},{},{"id":711,"data":1873,"type":544,"tunes":1874},{"text":713},{},{"id":716,"data":1876,"type":722,"tunes":1877},{"url":718,"title":719,"excerpt":720,"ctaLabel":721},{},{"id":725,"data":1879,"type":572,"tunes":1880},{"text":727,"level":47},{},{"id":730,"data":1882,"type":544,"tunes":1883},{"text":732},{},{"id":735,"data":1885,"type":544,"tunes":1886},{"text":737},{},{"id":740,"data":1888,"type":544,"tunes":1889},{"text":742},{},{"id":745,"data":1891,"type":544,"tunes":1892},{"text":747},{},{"id":750,"data":1894,"type":572,"tunes":1895},{"text":752,"level":47},{},{"id":755,"data":1897,"type":693,"tunes":1908},{"rows":1898,"title":770,"layout":685,"columns":1905},[1899,1901,1903],{"id":759,"label":760,"values":1900},[13,13],{"id":763,"label":764,"values":1902},[13,13],{"id":767,"label":768,"values":1904},[13,13],[1906,1907],{"id":773,"label":774},{"id":677,"label":776},{},{"id":779,"data":1910,"type":572,"tunes":1911},{"text":781,"level":47},{},{"id":784,"data":1913,"type":544,"tunes":1914},{"text":786},{},{"id":789,"data":1916,"type":544,"tunes":1917},{"text":791},{},{"id":794,"data":1919,"type":544,"tunes":1920},{"text":796},{},{"id":799,"data":1922,"type":572,"tunes":1923},{"text":801,"level":47},{},{"id":804,"data":1925,"type":544,"tunes":1926},{"text":806},{},{"id":809,"data":1928,"type":544,"tunes":1929},{"text":811},{},{"id":814,"data":1931,"type":544,"tunes":1932},{"text":816},{},{"id":819,"data":1934,"type":552,"tunes":1935},{"body":821,"title":822,"variant":823},{},{"id":826,"data":1937,"type":572,"tunes":1938},{"text":828,"level":47},{},{"id":831,"data":1940,"type":544,"tunes":1941},{"text":833},{},{"id":836,"data":1943,"type":544,"tunes":1944},{"text":838},{},{"id":841,"data":1946,"type":544,"tunes":1947},{"text":843},{},{"id":846,"data":1949,"type":572,"tunes":1950},{"text":848,"level":47},{},{"id":851,"data":1952,"type":544,"tunes":1953},{"text":853},{},{"id":856,"data":1955,"type":544,"tunes":1956},{"text":858},{},{"id":861,"data":1958,"type":544,"tunes":1959},{"text":863},{},{"id":866,"data":1961,"type":572,"tunes":1962},{"text":868,"level":47},{},{"id":871,"data":1964,"type":595,"tunes":1972},{"steps":1965,"title":892,"orientation":594},[1966,1967,1968,1969,1970,1971],{"label":875,"description":876},{"label":878,"description":879},{"label":881,"description":882},{"label":884,"description":885},{"label":887,"description":888},{"label":890,"description":891},{},{"id":895,"data":1974,"type":572,"tunes":1975},{"text":897,"level":47},{},{"id":900,"data":1977,"type":544,"tunes":1978},{"text":902},{},{"id":905,"data":1980,"type":544,"tunes":1981},{"text":907},{},{"id":910,"data":1983,"type":544,"tunes":1984},{"text":912},{},{"id":915,"data":1986,"type":552,"tunes":1987},{"body":917,"title":918,"variant":602},{},{"id":921,"data":1989,"type":572,"tunes":1990},{"text":923,"level":47},{},{"id":926,"data":1992,"type":544,"tunes":1993},{"text":928},{},{"id":931,"data":1995,"type":544,"tunes":1996},{"text":933},{},{"id":936,"data":1998,"type":544,"tunes":1999},{"text":938},{},{"id":941,"data":2001,"type":572,"tunes":2002},{"text":943,"level":47},{},{"id":946,"data":2004,"type":595,"tunes":2012},{"steps":2005,"title":967,"orientation":594},[2006,2007,2008,2009,2010,2011],{"label":950,"description":951},{"label":953,"description":954},{"label":956,"description":957},{"label":959,"description":960},{"label":962,"description":963},{"label":965,"description":966},{},{"id":970,"data":2014,"type":572,"tunes":2015},{"text":972,"level":47},{},{"id":975,"data":2017,"type":544,"tunes":2018},{"text":977},{},{"id":980,"data":2020,"type":544,"tunes":2021},{"text":982},{},{"id":985,"data":2023,"type":544,"tunes":2024},{"text":987},{},{"id":990,"data":2026,"type":544,"tunes":2027},{"text":992},{},{"id":995,"data":2029,"type":572,"tunes":2030},{"text":997,"level":47},{},{"id":1000,"data":2032,"type":544,"tunes":2033},{"text":1002},{},{"id":1005,"data":2035,"type":544,"tunes":2036},{"text":1007},{},{"id":1010,"data":2038,"type":544,"tunes":2039},{"text":1012},{},{"id":1015,"data":2041,"type":572,"tunes":2042},{"text":1017,"level":47},{},{"id":1020,"data":2044,"type":544,"tunes":2045},{"text":1022},{},{"id":1025,"data":2047,"type":544,"tunes":2048},{"text":1027},{},{"id":1030,"data":2050,"type":544,"tunes":2051},{"text":1032},{},{"id":1035,"data":2053,"type":572,"tunes":2054},{"text":1037,"level":47},{},{"id":1040,"data":2056,"type":544,"tunes":2057},{"text":1042},{},{"id":1045,"data":2059,"type":544,"tunes":2060},{"text":1047},{},{"id":1050,"data":2062,"type":572,"tunes":2063},{"text":1052,"level":47},{},{"id":1055,"data":2065,"type":544,"tunes":2066},{"text":1057},{},{"id":1060,"data":2068,"type":544,"tunes":2069},{"text":1062},{},{"id":1065,"data":2071,"type":572,"tunes":2072},{"text":1067,"level":47},{},{"id":1070,"data":2074,"type":544,"tunes":2075},{"text":1072},{},{"id":1075,"data":2077,"type":544,"tunes":2078},{"text":1077},{},{"id":1080,"data":2080,"type":544,"tunes":2081},{"text":1082},{},{"id":1085,"data":2083,"type":572,"tunes":2084},{"text":1087,"level":47},{},{"id":1090,"data":2086,"type":1118,"tunes":2094},{"items":2087,"title":1117},[2088,2089,2090,2091,2092,2093],{"id":1094,"answer":1095,"question":1096},{"id":1098,"answer":1099,"question":1100},{"id":1102,"answer":1103,"question":1104},{"id":1106,"answer":1107,"question":1108},{"id":1110,"answer":1111,"question":1112},{"id":1114,"answer":1115,"question":1116},{},{"id":1121,"data":2096,"type":572,"tunes":2097},{"text":1123,"level":47},{},{"id":1126,"data":2099,"type":1157,"tunes":2108},{"title":1128,"entries":2100},[2101,2102,2103,2104,2105,2106,2107],{"term":1131,"anchor":1132,"definition":1133},{"term":1135,"anchor":1136,"definition":1137},{"term":692,"anchor":1139,"definition":1140},{"term":1142,"anchor":1143,"definition":1144},{"term":1146,"anchor":1147,"definition":1148},{"term":1150,"anchor":1151,"definition":1152},{"term":1154,"anchor":1155,"definition":1156},{},{"id":1160,"data":2110,"type":572,"tunes":2111},{"text":1162,"level":47},{},{"id":1165,"data":2113,"type":1172,"tunes":2116},{"link":1167,"meta":2114},{"image":2115,"title":1170,"description":1171},{"url":13},{},{"id":1175,"data":2118,"type":1172,"tunes":2121},{"link":1177,"meta":2119},{"image":2120,"title":1180,"description":1181},{"url":13},{},{"id":1184,"data":2123,"type":1172,"tunes":2126},{"link":1186,"meta":2124},{"image":2125,"title":1189,"description":1190},{"url":13},{},{"id":1193,"data":2128,"type":1172,"tunes":2131},{"link":1195,"meta":2129},{"image":2130,"title":1198,"description":1199},{"url":13},{},{"id":1202,"data":2133,"type":1172,"tunes":2136},{"link":1204,"meta":2134},{"image":2135,"title":1207,"description":1208},{"url":13},{},"Post erfolgreich abgerufen",{"items":2139,"source":2178,"manualIds":2179,"manualMatchedIds":2180},[2140,2147,2153,2159,2165,2171],{"id":2141,"slug":2142,"title":2143,"excerpt":2144,"featuredImage":2145,"publishedAt":2146},"448","rtx-neural-texture-compression-is-not-upscaling-how-ai-can-trade-texture-memory-for-gpu-compute","La compressione neurale delle texture RTX non è upscaling: come l'IA può scambiare memoria delle texture con potenza di calcolo della GPU","NVIDIA RTX Neural Texture Compression cambia il modo in cui i materiali di gioco possono essere archiviati. Invece di mantenere ogni canale di texture solo come texel convenzionali, un materiale può essere compresso in dati latenti compatti e un piccolo decoder neurale, per poi essere ricostruito dalla GPU quando necessario.","\u002Fuploads\u002F2026\u002F09\u002Frtx-neural-texture-compression-is-not-upscaling-how-ai-can-trade-texture-memory-for-gpu-compute-1790378933528-ul75hf.webp","2026-09-25T21:27:00.000Z",{"id":2148,"slug":2149,"title":719,"excerpt":2150,"featuredImage":2151,"publishedAt":2152},"441","vram-usage-is-not-vram-requirement-why-a-full-memory-meter-does-not-tell-the-whole-story","Vedere 7,8 GB utilizzati su una scheda grafica da 8 GB può sembrare la prova che un gioco ha esaurito la VRAM. Non è così semplice. Questa guida spiega la capacità della VRAM, i budget di residenza, i working set, la memoria condivisa e come capire se la pressione sulla memoria sta effettivamente causando stutter.","\u002Fuploads\u002F2026\u002F09\u002Fvram-usage-is-not-vram-requirement-why-a-full-memory-meter-does-not-tell-the-whole-story-1790375650647-k854hg.webp","2026-09-25T18:33:00.000Z",{"id":2154,"slug":2155,"title":2156,"excerpt":2157,"featuredImage":14,"publishedAt":2158},"137","storage-and-streaming-stutter-when-ssd-decompression-and-vram-matter","Archiviazione e stuttering da streaming: quando SSD, decompressione e VRAM contano","Lo stuttering da streaming è il caricamento degli asset: velocità di archiviazione, decompressione e comportamento della memoria. Usa questo triage per eliminare i picchi quando si entra in nuove aree.","2026-02-20T11:30:00.000Z",{"id":2160,"slug":2161,"title":2162,"excerpt":2163,"featuredImage":14,"publishedAt":2164},"221","storage-streaming-stutter-fixes-when-assets-cant-keep-up","Soluzioni per lo stuttering dello streaming dall'archiviazione: quando gli asset non tengono il passo","Lo stuttering da streaming si verifica quando vengono caricate nuove aree: limiti di archiviazione, decompressione o streaming degli asset. Usa questo ordine di correzione prima di abbassare ogni impostazione grafica.","2026-02-20T21:00:00.000Z",{"id":2166,"slug":2167,"title":2168,"excerpt":2169,"featuredImage":14,"publishedAt":2170},"24","storage-and-streaming-reduce-load-times-without-creating-stutter","Archiviazione e streaming: ridurre i tempi di caricamento senza creare stuttering","Lo storage veloce aiuta solo quando il comportamento dello streaming è stabile. Questa guida spiega come l'IO influisce sullo stutter e cosa cambiare per primo.","2026-02-19T11:00:00.000Z",{"id":2172,"slug":2173,"title":2174,"excerpt":2175,"featuredImage":2176,"publishedAt":2177},"440","lowered-graphics-settings-but-fps-didn-t-improve-you-re-probably-tuning-the-wrong-bottleneck","Hai abbassato le impostazioni grafiche ma gli FPS non sono migliorati? Probabilmente stai ottimizzando il collo di bottiglia sbagliato","Riduci ombre, effetti e risoluzione, ma gli FPS cambiano a malapena. Questa guida spiega perché le impostazioni grafiche aiutano solo quando riducono il carico che sta effettivamente limitando il frame—e come identificare i colli di bottiglia di CPU, GPU, memoria, streaming e limite di frame.","\u002Fuploads\u002F2026\u002F09\u002Flowered-graphics-settings-but-fps-didn-t-improve-you-re-probably-tuning-the-wrong-bottleneck-1790375130830-i10hb3.webp","2026-09-25T18:23:00.000Z","fallback",[],[]]