[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"portal-settings:figure:ru":3,"public-menus:all":45,"post:why-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it:ru":531,"related:post:why-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it:ru:1":2118},{"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","ru","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":2117},{"id":533,"title":534,"slug":535,"content":536,"contentJson":537,"excerpt":1203,"featuredImage":1204,"featuredImageAlt":1205,"featuredImageCaption":14,"featuredImageTitle":14,"featuredImageCopyright":14,"featuredImageAuthor":14,"featuredImageSourceUrl":14,"featuredImageLicense":14,"featuredImageIsAiGenerated":1206,"status":1207,"publishedAt":1208,"createdAt":1209,"updatedAt":1210,"seoLocalePaths":1211,"categories":1220,"author":1243,"translations":1247},"450","Почему в ПК-играх возникают рывки при компиляции шейдеров — и как передовая доставка шейдеров меняет ситуацию","why-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it","\u003Cp>Заикание шейдеров на ПК существует потому, что игра часто не может использовать шейдер до тех пор, пока этот шейдер не будет скомпилирован для конкретной среды GPU и драйвера, в которой запущена игра. Microsoft Advanced Shader Delivery меняет место выполнения этой компиляции: вместо ожидания ПК игрока работа может быть выполнена заранее, и скомпилированные данные шейдеров могут поставляться вместе с игрой.\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\">Прямой ответ\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">\u003Cstrong>Advanced Shader Delivery не заставляет шейдеры исчезнуть.\u003C\u002Fstrong> Он переносит большую часть работы по компиляции с ПК игрока. Игра предоставляет информацию о состоянии шейдеров, платформа создает базы данных предварительно скомпилированных шейдеров для конкретного оборудования, а магазин доставляет игроку нужные скомпилированные данные.\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\">Текущий статус в 2026 году\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Advanced Shader Delivery доступен через приложение Xbox для ПК на поддерживаемых системах Windows 11 и в настоящее время имеет документированную поддержку AMD RDNA. Microsoft заявляет, что поддержка более широкого спектра оборудования все еще расширяется.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Cnav class=\"editorjs-toc\" data-editorjs-toc=\"true\" aria-label=\"Содержание\">\u003Cstrong class=\"editorjs-toc__title\">Содержание\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\">Почему ПК-игры вообще компилируют шейдеры\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-10\" class=\"editorjs-toc__link\">Откуда берется заикание шейдеров\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-15\" class=\"editorjs-toc__link\">Обычный путь компиляции шейдеров\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-17\" class=\"editorjs-toc__link\">Что меняет Advanced Shader Delivery\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-22\" class=\"editorjs-toc__link\">Конвейер SODB → PSDB\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-25\" class=\"editorjs-toc__link\">Почему на ПК это сложнее, чем на консоли\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-27\" class=\"editorjs-toc__link\">Почему обновление драйвера может иметь значение\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-31\" class=\"editorjs-toc__link\">Означает ли это, что экраны компиляции шейдеров исчезнут?\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-36\" class=\"editorjs-toc__link\">Граница доступности шейдеров\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-38\" class=\"editorjs-toc__link\">Что на самом деле означают цифры Microsoft в 90% и 95%\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-42\" class=\"editorjs-toc__link\">Тест диагностики шейдерных задержек\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-44\" class=\"editorjs-toc__link\">Шейдерная задержка — это не то же самое, что задержка потоковой загрузки ресурсов\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-49\" class=\"editorjs-toc__link\">Почему магазин имеет значение\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-53\" class=\"editorjs-toc__link\">Почему это не просто ещё один кэш шейдеров\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-57\" class=\"editorjs-toc__link\">Что разработчикам действительно нужно делать\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-61\" class=\"editorjs-toc__link\">Какое оборудование работает сегодня?\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-65\" class=\"editorjs-toc__link\">Почему это важнее очередной функции FPS\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-69\" class=\"editorjs-toc__link\">Что могло бы изменить этот ответ?\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-73\" class=\"editorjs-toc__link\">Ограничения\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-76\" class=\"editorjs-toc__link\">Заключение\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-80\" class=\"editorjs-toc__link\">Часто задаваемые вопросы\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-82\" class=\"editorjs-toc__link\">Глоссарий\u003C\u002Fa>\u003C\u002Fli>\u003Cli class=\"editorjs-toc__item\">\u003Ca href=\"#section-84\" class=\"editorjs-toc__link\">Первоисточники\u003C\u002Fa>\u003C\u002Fli>\u003C\u002Fol>\u003C\u002Fnav>\n\u003Ch2 id=\"section-5\">Почему ПК-игры вообще компилируют шейдеры\u003C\u002Fh2>\n\u003Cp>Шейдер — это небольшая программа для GPU, используемая для задач рендеринга, таких как освещение, материалы, тени, постобработка и другие графические работы.\u003C\u002Fp>\n\u003Cp>Игра обычно поставляется с кодом шейдеров в промежуточной форме. Прежде чем GPU сможет эффективно его выполнить, графический драйвер компилирует этот код в форму, специфичную для конкретного оборудования.\u003C\u002Fp>\n\u003Cp>На консоли целевое оборудование и среда драйвера гораздо более предсказуемы. На ПК с Windows игра может работать на множестве моделей GPU, версий драйверов и конфигураций системы.\u003C\u002Fp>\n\u003Cp>Эта матрица оборудования — причина, по которой компиляцию шейдеров на ПК сложнее полностью подготовить заранее.\u003C\u002Fp>\n\u003Ch2 id=\"section-10\">Откуда берется заикание шейдеров\u003C\u002Fh2>\n\u003Cp>Если игра встречает шейдер, который еще не скомпилирован, драйверу, возможно, придется скомпилировать его во время работы игры.\u003C\u002Fp>\n\u003Cp>Эта работа может прервать нормальный конвейер кадров. Результатом может стать короткий рывок, даже когда средний FPS высок.\u003C\u002Fp>\n\u003Cp>Как только скомпилированный шейдер будет кэширован, тот же рывок может больше не повториться, пока кэш не будет аннулирован или не потребуются новые комбинации шейдеров.\u003C\u002Fp>\n\u003Caside class=\"editorjs-referral my-6\">\u003Ca href=\"https:\u002F\u002Ffigure.rocks\u002Fru\u002Fblog\u002Fwhy-120-fps-can-still-feel-bad-frame-time-1-lows-and-stutter-explained\" 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\">Почему 120 FPS все еще могут ощущаться плохо: время кадра, 1% низких и заикание — объяснение\u003C\u002Fstrong>\u003Cp class=\"mt-2 text-sm text-gray-600 dark:text-gray-300\">Почему средний FPS может выглядеть здоровым, в то время как несколько длинных кадров делают игру неравномерной.\u003C\u002Fp>\u003Cspan class=\"mt-3 inline-flex text-sm font-medium text-primary-600 dark:text-primary-400\">Читать руководство по времени кадра →\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002Fa>\u003C\u002Faside>\n\u003Ch2 id=\"section-15\">Обычный путь компиляции шейдеров\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Без Advanced Shader Delivery\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. Игра поставляет исходный код шейдеров или промежуточные данные\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Пакет содержит то, что нужно драйверу для создания программ, специфичных для GPU.\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. Игрок запускает игру\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">В системе еще нет всех скомпилированных вариантов шейдеров в кэше.\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. Драйвер компилирует шейдеры локально\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Компиляция происходит при запуске, во время специального экрана предварительной компиляции или непосредственно во время игры.\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. Скомпилированные шейдеры кэшируются\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Будущие запуски могут повторно использовать результаты, пока кэш остается действительным.\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. Изменения драйвера или игры могут аннулировать кэш\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Системе может потребоваться повторная компиляция после соответствующих обновлений.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-17\">Что меняет Advanced Shader Delivery\u003C\u002Fh2>\n\u003Cp>Advanced Shader Delivery переносит дорогостоящий этап компиляции в конвейер распространения.\u003C\u002Fp>\n\u003Cp>Игра предоставляет стандартизированное описание объектов состояния шейдеров, которые могут ей понадобиться. Microsoft называет эту коллекцию базой данных объектов состояния, или SODB.\u003C\u002Fp>\n\u003Cp>Платформа объединяет эти данные игры с отдельным компилятором шейдеров для соответствующего оборудования и среды драйвера, чтобы создать базу данных предкомпилированных шейдеров, или PSDB.\u003C\u002Fp>\n\u003Cp>Затем PSDB можно распространять через магазин вместе с игрой.\u003C\u002Fp>\n\u003Ch2 id=\"section-22\">Конвейер SODB → PSDB\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Как работает Advanced Shader Delivery\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. Игра создаёт SODB\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Разработчик собирает информацию об объектах состояния, необходимую для описания шейдеров игры.\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. SODB отправляется вместе с игрой\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">База данных состояний шейдеров становится частью процесса распространения.\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. Компиляция под конкретное оборудование происходит заранее\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Компилятор шейдеров создаёт правильную скомпилированную форму для поддерживаемого графического процессора и среды драйвера.\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. Создаётся PSDB\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">База данных предкомпилированных шейдеров содержит скомпилированные данные шейдеров для целевой среды.\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. Магазин доставляет PSDB\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Скомпилированная база данных шейдеров поступает вместе с загрузкой игры или рядом с ней.\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. Windows регистрирует скомпилированные шейдеры\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">При запуске игры многие шейдеры уже могут присутствовать, вместо того чтобы компилироваться локально.\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\">Самая простая мысленная модель\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">\u003Cstrong>SODB = то, что может понадобиться игре.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Компилятор = превращает это в аппаратно-специфичные программы для графического процессора.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>PSDB = скомпилированный результат.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Магазин = доставляет его до начала игры.\u003C\u002Fstrong>\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-25\">Почему на ПК это сложнее, чем на консоли\u003C\u002Fh2>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Подготовка шейдеров на консоли и ПК\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\">Консоль\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\">ПК с Windows\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\">Целевое оборудование\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\">Среда драйвера\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\">Предкомпиляция\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\">Стабильность кэша\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-27\">Почему обновление драйвера может иметь значение\u003C\u002Fh2>\n\u003Cp>Скомпилированные шейдеры не полностью независимы от графического драйвера.\u003C\u002Fp>\n\u003Cp>Обновление драйвера может изменить компилятор или сделать недействительными ранее скомпилированные данные кэша.\u003C\u002Fp>\n\u003Cp>Архитектура Advanced Shader Delivery от Microsoft предназначена для обнаружения такого изменения среды и обновления предкомпилированных данных шейдеров, вместо того чтобы оставлять игрока вручную пересобирать всё.\u003C\u002Fp>\n\u003Ch2 id=\"section-31\">Означает ли это, что экраны компиляции шейдеров исчезнут?\u003C\u002Fh2>\n\u003Cp>Потенциально многие из них могут стать намного короче или ненужными, но Advanced Shader Delivery не гарантирует, что любое ожидание, связанное с шейдерами, исчезнет.\u003C\u002Fp>\n\u003Cp>Качество SODB имеет значение. Если игра не опишет комбинации шейдеров, которые понадобятся позже, эти пропущенные случаи всё ещё могут потребовать локальной работы.\u003C\u002Fp>\n\u003Cp>Обновления игры также могут вводить новые состояния шейдеров, для которых нужны новые предкомпилированные данные.\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\">Предкомпилированный не означает полный\u003C\u002Fstrong>\u003Cdiv class=\"text-gray-700 dark:text-gray-200\">Advanced Shader Delivery может устранить большой класс работы по компиляции во время выполнения, но только для тех состояний шейдеров, которые были правильно захвачены, скомпилированы и распространены.\u003C\u002Fdiv>\u003C\u002Faside>\n\u003Ch2 id=\"section-36\">Граница доступности шейдеров\u003C\u002Fh2>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Что определяет, может ли игра избежать локальной компиляции?\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\">Покрывается ASD\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\">Вне поставляемой базы данных\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\">Состояние шейдера\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\">Аппаратная цель\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\">Версия игры\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\">Распространение\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-38\">Что на самом деле означают цифры Microsoft в 90% и 95%\u003C\u002Fh2>\n\u003Cp>Microsoft заявляет, что Advanced Shader Delivery может сократить время загрузки, связанное с шейдерами, до 90% в поддерживаемых сценариях.\u003C\u002Fp>\n\u003Cp>Для Forza Horizon 6 Microsoft сообщила о конкретном внутреннем примере, где загрузка сократилась с почти 1,5 минут до примерно 4 секунд на системе Ryzen 7 5800 с Radeon RX 7600, что, по её описанию, составляет примерно 95% экономии времени.\u003C\u002Fp>\n\u003Cp>Эти цифры не следует интерпретировать как универсальную гарантию для каждой игры, GPU или экрана загрузки.\u003C\u002Fp>\n\u003Ch2 id=\"section-42\">Тест диагностики шейдерных задержек\u003C\u002Fh2>\n\u003Csection class=\"editorjs-process my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Как определить, действительно ли задержка вызвана компиляцией шейдеров\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. Повторите ту же сцену\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Если задержка происходит один раз и исчезает при втором запуске, прогрев кэша является сильным признаком.\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. Сравните после очистки или аннулирования кэша шейдеров\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Возвращающаяся задержка может указывать на компиляцию шейдеров, а не на постоянное узкое место производительности.\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. Проверьте всплески времени кадра\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Шейдерная задержка проявляется как длинные отдельные кадры, а не просто как более низкий стабильный средний FPS.\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. Отделите потоковую загрузку ресурсов от компиляции шейдеров\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Оба могут вызывать задержки при перемещении, но это разные конвейеры.\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. Проверьте обновления игры и драйверов\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">Новое обновление может аннулировать или расширить кэши шейдеров.\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. Ищите статус ASD\u003C\u002Fdiv>\u003Cdiv class=\"mt-1 text-sm text-gray-600 dark:text-gray-300\">В поддерживаемых приложениях Xbox PC окно запуска может указывать на то, что предварительно скомпилированные шейдеры были установлены.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-44\">Шейдерная задержка — это не то же самое, что задержка потоковой загрузки ресурсов\u003C\u002Fh2>\n\u003Cp>Обе проблемы могут создавать задержку при входе в новую область, что делает их легко перепутать.\u003C\u002Fp>\n\u003Cp>Компиляция шейдеров — это создание исполняемых программ для GPU. Потоковая загрузка ресурсов — это перемещение текстур, геометрии и другого контента в доступную память.\u003C\u002Fp>\n\u003Cp>Advanced Shader Delivery нацелена на первую проблему. DirectStorage нацелена на второй конвейер.\u003C\u002Fp>\n\u003Caside class=\"editorjs-referral my-6\">\u003Ca href=\"https:\u002F\u002Ffigure.rocks\u002Fru\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do\" 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\">DirectStorage 1.4 не заставляет ваш SSD распаковывать игры: что на самом деле делают Zstd и распаковка на GPU\u003C\u002Fstrong>\u003Cp class=\"mt-2 text-sm text-gray-600 dark:text-gray-300\">Отдельный взгляд на путь загрузки ресурсов: чтение с SSD, планирование DirectStorage и распаковка на CPU\u002FGPU.\u003C\u002Fp>\u003Cspan class=\"mt-3 inline-flex text-sm font-medium text-primary-600 dark:text-primary-400\">Читать руководство по DirectStorage →\u003C\u002Fspan>\u003C\u002Fdiv>\u003C\u002Fa>\u003C\u002Faside>\n\u003Ch2 id=\"section-49\">Почему магазин имеет значение\u003C\u002Fh2>\n\u003Cp>Advanced Shader Delivery — это не только функция API Direct3D.\u003C\u002Fp>\n\u003Cp>Система зависит от службы распространения, которая знает, какая версия игры, среда GPU и скомпилированная база данных принадлежат друг другу.\u003C\u002Fp>\n\u003Cp>Именно поэтому текущая реализация Microsoft привязана к распространению через приложение Xbox PC, а не является чем-то, что отдельный игрок просто включает глобально.\u003C\u002Fp>\n\u003Ch2 id=\"section-53\">Почему это не просто ещё один кэш шейдеров\u003C\u002Fh2>\n\u003Cp>Обычный локальный кэш шейдеров создаётся после того, как ваша собственная машина уже заплатила стоимость компиляции.\u003C\u002Fp>\n\u003Cp>Advanced Shader Delivery пытается доставить это полезное скомпилированное состояние до того, как затраты достигнут вашей машины.\u003C\u002Fp>\n\u003Csection class=\"editorjs-comparison my-6\">\u003Ch3 class=\"mb-3 text-lg font-semibold\">Локальный кэш шейдеров против Advanced Shader Delivery\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\">Локальный кэш шейдеров\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\">Advanced Shader Delivery\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\">Когда происходит компиляция\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\">Кто оплачивает начальные затраты на компиляцию\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\">Поведение при первом запуске\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\">Подтормаживание JIT-шейдеров\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-57\">Что разработчикам действительно нужно делать\u003C\u002Fh2>\n\u003Cp>Игра всё ещё должна предоставлять достаточно информации, чтобы платформа могла построить полезную базу данных.\u003C\u002Fp>\n\u003Cp>Текущий рабочий процесс Microsoft требует от разработчиков собирать или программно генерировать SODB, тестировать его путём локальной компиляции PSDB и отправлять SODB через конвейер магазина.\u003C\u002Fp>\n\u003Cp>Agility SDK 1.619 также представил API идентификации приложения и статистики, чтобы разработчики могли последовательно идентифицировать игру и измерять, насколько эффективно используется PSDB.\u003C\u002Fp>\n\u003Ch2 id=\"section-61\">Какое оборудование работает сегодня?\u003C\u002Fh2>\n\u003Cp>В обновлении Microsoft от июня 2026 года указаны Windows 11 версии 24H2 или новее, требуемая версия Xbox Gaming Services, оборудование AMD Radeon на базе RDNA 1–RDNA 4 и AMD Adrenalin 26.6.1 или новее для текущего документированного пути через приложение Xbox для ПК.\u003C\u002Fp>\n\u003Cp>Microsoft также заявила, что работает с Intel и другими производителями оборудования, и что поддержка будет расширена на большее число устройств.\u003C\u002Fp>\n\u003Cp>Это означает, что Advanced Shader Delivery следует рассматривать как расширяющуюся функцию платформы, а не как универсальную возможность Windows на любом GPU сегодня.\u003C\u002Fp>\n\u003Ch2 id=\"section-65\">Почему это важнее очередной функции FPS\u003C\u002Fh2>\n\u003Cp>Апскейлинг и генерация кадров улучшают вывод конвейера рендеринга после того, как игра уже запущена.\u003C\u002Fp>\n\u003Cp>Advanced Shader Delivery решает другую проблему качества: скачок времени кадра, вызванный подготовкой GPU-программ в неподходящий момент.\u003C\u002Fp>\n\u003Cp>Именно поэтому преимущество может быть заметным даже тогда, когда средний FPS вообще не меняется.\u003C\u002Fp>\n\u003Ch2 id=\"section-69\">Что могло бы изменить этот ответ?\u003C\u002Fh2>\n\u003Cp>Самая большая изменяющаяся граница — это поддержка экосистемы.\u003C\u002Fp>\n\u003Cp>Microsoft всё ещё расширяет Advanced Shader Delivery на GPU, рабочие процессы магазинов и интеграции с игровыми движками. Поэтому требования к оборудованию и поддерживаемые пути распространения могут быстро меняться.\u003C\u002Fp>\n\u003Cp>Будущая реализация, широко интегрированная в основные магазины для ПК, могла бы сделать доставку предварительно скомпилированных шейдеров гораздо более прозрачной для игроков, чем сегодня.\u003C\u002Fp>\n\u003Ch2 id=\"section-73\">Ограничения\u003C\u002Fh2>\n\u003Cp>В этой статье описана документированная Microsoft архитектура Advanced Shader Delivery и текущая поддержка приложения Windows\u002FXbox для ПК по состоянию на сентябрь 2026 года.\u003C\u002Fp>\n\u003Cp>Заявленная Microsoft экономия времени загрузки — это измерения производителей в конкретных поддерживаемых сценариях. Их не следует рассматривать как универсальные гарантии производительности.\u003C\u002Fp>\n\u003Ch2 id=\"section-76\">Заключение\u003C\u002Fh2>\n\u003Cp>Advanced Shader Delivery решает простую проблему ответом на уровне платформы.\u003C\u002Fp>\n\u003Cp>ПК-игре нужны скомпилированные шейдеры, специфичные для GPU. Их сборка на машине игрока может приводить к долгим первым запускам и подтормаживаниям из-за компиляции по мере необходимости. ASD фиксирует то, что нужно игре, компилирует это заранее для целевой среды и доставляет результат через магазин.\u003C\u002Fp>\n\u003Cp>Шейдер по-прежнему существует. Компиляция по-прежнему происходит. Важное изменение в том, что это происходит до того, как это понадобится игроку.\u003C\u002Fp>\n\u003Ch2 id=\"section-80\">Часто задаваемые вопросы\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\">Advanced Shader Delivery простыми словами\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\">Что такое Advanced Shader Delivery?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Технология Windows 11 Direct3D 12, которая предварительно компилирует шейдеры заранее и доставляет их вместе с игрой вместо компиляции всего на ПК игрока.\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\">Что такое SODB?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">База данных объектов состояния (State Object Database), описывающая состояния шейдеров, которые могут понадобиться игре, чтобы их можно было скомпилировать до доставки.\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\">Что такое PSDB?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">База данных предварительно скомпилированных шейдеров (Precompiled Shader Database), содержащая шейдерные программы, уже скомпилированные для целевой аппаратной и драйверной среды.\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\">Устраняет ли ASD все подтормаживания из-за шейдеров?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Не автоматически. Отсутствующие состояния шейдеров, неподдерживаемые среды или новый игровой контент всё ещё могут требовать локальной компиляции.\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\">ASD — это то же самое, что локальный кэш шейдеров?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Нет. Локальный кэш создаётся после того, как ваш ПК скомпилирует шейдеры. ASD пытается доставить скомпилированные данные шейдеров до того, как вы запустите игру.\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\">Увеличивает ли Advanced Shader Delivery FPS?\u003C\u002Fh4>\u003Cdiv class=\"mt-2 text-gray-600 dark:text-gray-300\">Его основная цель — более быстрая подготовка шейдеров и меньше связанных с компиляцией скачков времени кадра, а не повышение стабильного FPS.\u003C\u002Fdiv>\u003C\u002Fdiv>\u003C\u002Fsection>\n\u003Ch2 id=\"section-82\">Глоссарий\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\">Ключевые термины доставки шейдеров\u003C\u002Fh3>\u003Cdl>\u003Cdiv id=\"shader\" 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\">Шейдер\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Программа для GPU, используемая для графических или вычислительных задач, таких как освещение, материалы и постобработка.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"shader-compilation\" 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\">Компиляция шейдеров\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Преобразование кода шейдера в специфичную для GPU исполняемую форму, которую могут запускать драйвер и аппаратное обеспечение.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"sodb\" 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\">SODB\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">База данных объектов состояния, содержащая информацию о состояниях шейдеров, собранную из игры или сгенерированную для неё.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"psdb\" 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\">PSDB\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">База данных предварительно скомпилированных шейдеров, содержащая данные шейдеров, скомпилированные заранее для целевой среды.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"jit-compilation\" 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\">JIT-компиляция\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Компиляция по мере необходимости, выполняемая при первом использовании шейдера во время запуска или игрового процесса.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"shader-availability-boundary\" 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\">Граница доступности шейдеров\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Модель Figure Rocks, описывающая, когда шейдер может быть предоставлен из доставленных предварительно скомпилированных данных, а когда всё ещё требуется локальная компиляция.\u003C\u002Fdd>\u003C\u002Fdiv>\u003Cdiv id=\"shader-stutter-diagnosis-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\">Тест диагностики подтормаживаний из-за шейдеров\u003C\u002Fdt>\u003Cdd class=\"mt-1 text-gray-600 dark:text-gray-300\">Рабочий процесс Figure Rocks для отделения задержек, вызванных компиляцией шейдеров, от других причин скачков времени кадра.\u003C\u002Fdd>\u003C\u002Fdiv>\u003C\u002Fdl>\u003C\u002Fsection>\n\u003Ch2 id=\"section-84\">Первоисточники\u003C\u002Fh2>\n\u003Ca href=\"https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fwindows\u002Fwin32\u002Fdirect3d12\u002Fadvanced-shader-delivery\" 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 Learn — Advanced Shader Delivery\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Официальная документация Windows, описывающая рабочий процесс от SODB к PSDB, преимущества и текущую модель платформы.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fintroducing-advanced-shader-delivery\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 — Introducing Advanced Shader Delivery\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Официальное объяснение архитектуры, охватывающее локальную компиляцию шейдеров, SODB, PSDB и распространение через магазины.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fadvanced-shader-delivery-whats-new-at-gdc-2026\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 — Advanced Shader Delivery at GDC 2026\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Официальное обновление для разработчиков 2026 года, охватывающее интеграцию SODB, идентификацию приложений, статистику и рабочий процесс Xbox Partner Center.\u003C\u002Fp>\u003C\u002Fa>\n\u003Ca href=\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fadvanced-shader-delivery-expands-public-preview-with-amd\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 — Advanced Shader Delivery expands with AMD\u003C\u002Fstrong>\u003Cp class=\"text-sm text-gray-600 dark:text-gray-400\">Официальное обновление о доступности 2026 года, охватывающее Windows 11, поддержку AMD RDNA, распространение через приложение Xbox для ПК и измерения Forza Horizon 6.\u003C\u002Fp>\u003C\u002Fa>",{"time":538,"blocks":539,"version":1202},1790406804561,[540,546,554,561,568,574,579,584,589,594,599,604,609,614,623,628,651,656,661,666,671,676,681,705,712,717,748,753,758,763,768,773,778,783,788,795,800,829,834,839,844,849,854,878,883,888,893,898,906,911,916,921,926,931,936,941,970,975,980,985,990,995,1000,1005,1010,1015,1020,1025,1030,1035,1040,1045,1050,1055,1060,1065,1070,1075,1080,1085,1090,1121,1126,1160,1165,1175,1184,1193],{"id":541,"data":542,"type":544,"tunes":545},"3cee674645",{"text":543},"Заикание шейдеров на ПК существует потому, что игра часто не может использовать шейдер до тех пор, пока этот шейдер не будет скомпилирован для конкретной среды GPU и драйвера, в которой запущена игра. Microsoft Advanced Shader Delivery меняет место выполнения этой компиляции: вместо ожидания ПК игрока работа может быть выполнена заранее, и скомпилированные данные шейдеров могут поставляться вместе с игрой.","paragraph",{},{"id":547,"data":548,"type":552,"tunes":553},"24a1733ca8",{"body":549,"title":550,"variant":551},"\u003Cstrong>Advanced Shader Delivery не заставляет шейдеры исчезнуть.\u003C\u002Fstrong> Он переносит большую часть работы по компиляции с ПК игрока. Игра предоставляет информацию о состоянии шейдеров, платформа создает базы данных предварительно скомпилированных шейдеров для конкретного оборудования, а магазин доставляет игроку нужные скомпилированные данные.","Прямой ответ","info","callout",{},{"id":555,"data":556,"type":552,"tunes":560},"48a3661d84",{"body":557,"title":558,"variant":559},"Advanced Shader Delivery доступен через приложение Xbox для ПК на поддерживаемых системах Windows 11 и в настоящее время имеет документированную поддержку AMD RDNA. Microsoft заявляет, что поддержка более широкого спектра оборудования все еще расширяется.","Текущий статус в 2026 году","note",{},{"id":562,"data":563,"type":566,"tunes":567},"2a609230a5",{"title":564,"maxLevel":565,"minLevel":47},"Содержание",3,"tableOfContents",{},{"id":569,"data":570,"type":572,"tunes":573},"629087889e",{"text":571,"level":47},"Почему ПК-игры вообще компилируют шейдеры","header",{},{"id":575,"data":576,"type":544,"tunes":578},"598e794c99",{"text":577},"Шейдер — это небольшая программа для GPU, используемая для задач рендеринга, таких как освещение, материалы, тени, постобработка и другие графические работы.",{},{"id":580,"data":581,"type":544,"tunes":583},"72d7b4a8a7",{"text":582},"Игра обычно поставляется с кодом шейдеров в промежуточной форме. Прежде чем GPU сможет эффективно его выполнить, графический драйвер компилирует этот код в форму, специфичную для конкретного оборудования.",{},{"id":585,"data":586,"type":544,"tunes":588},"dc6d594d0a",{"text":587},"На консоли целевое оборудование и среда драйвера гораздо более предсказуемы. На ПК с Windows игра может работать на множестве моделей GPU, версий драйверов и конфигураций системы.",{},{"id":590,"data":591,"type":544,"tunes":593},"66bff5badb",{"text":592},"Эта матрица оборудования — причина, по которой компиляцию шейдеров на ПК сложнее полностью подготовить заранее.",{},{"id":595,"data":596,"type":572,"tunes":598},"9d6edb14c9",{"text":597,"level":47},"Откуда берется заикание шейдеров",{},{"id":600,"data":601,"type":544,"tunes":603},"ed90f5091b",{"text":602},"Если игра встречает шейдер, который еще не скомпилирован, драйверу, возможно, придется скомпилировать его во время работы игры.",{},{"id":605,"data":606,"type":544,"tunes":608},"7551ab324d",{"text":607},"Эта работа может прервать нормальный конвейер кадров. Результатом может стать короткий рывок, даже когда средний FPS высок.",{},{"id":610,"data":611,"type":544,"tunes":613},"a75fc2b3d4",{"text":612},"Как только скомпилированный шейдер будет кэширован, тот же рывок может больше не повториться, пока кэш не будет аннулирован или не потребуются новые комбинации шейдеров.",{},{"id":615,"data":616,"type":621,"tunes":622},"6aed79503f",{"url":617,"title":618,"excerpt":619,"ctaLabel":620},"https:\u002F\u002Ffigure.rocks\u002Fru\u002Fblog\u002Fwhy-120-fps-can-still-feel-bad-frame-time-1-lows-and-stutter-explained","Почему 120 FPS все еще могут ощущаться плохо: время кадра, 1% низких и заикание — объяснение","Почему средний FPS может выглядеть здоровым, в то время как несколько длинных кадров делают игру неравномерной.","Читать руководство по времени кадра","referralArticle",{},{"id":624,"data":625,"type":572,"tunes":627},"6417a8a29e",{"text":626,"level":47},"Обычный путь компиляции шейдеров",{},{"id":629,"data":630,"type":649,"tunes":650},"a28d732096",{"steps":631,"title":647,"orientation":648},[632,635,638,641,644],{"label":633,"description":634},"1. Игра поставляет исходный код шейдеров или промежуточные данные","Пакет содержит то, что нужно драйверу для создания программ, специфичных для GPU.",{"label":636,"description":637},"2. Игрок запускает игру","В системе еще нет всех скомпилированных вариантов шейдеров в кэше.",{"label":639,"description":640},"3. Драйвер компилирует шейдеры локально","Компиляция происходит при запуске, во время специального экрана предварительной компиляции или непосредственно во время игры.",{"label":642,"description":643},"4. Скомпилированные шейдеры кэшируются","Будущие запуски могут повторно использовать результаты, пока кэш остается действительным.",{"label":645,"description":646},"5. Изменения драйвера или игры могут аннулировать кэш","Системе может потребоваться повторная компиляция после соответствующих обновлений.","Без Advanced Shader Delivery","auto","processFlow",{},{"id":652,"data":653,"type":572,"tunes":655},"873418b9cd",{"text":654,"level":47},"Что меняет Advanced Shader Delivery",{},{"id":657,"data":658,"type":544,"tunes":660},"2d58ee74cb",{"text":659},"Advanced Shader Delivery переносит дорогостоящий этап компиляции в конвейер распространения.",{},{"id":662,"data":663,"type":544,"tunes":665},"265d255da5",{"text":664},"Игра предоставляет стандартизированное описание объектов состояния шейдеров, которые могут ей понадобиться. Microsoft называет эту коллекцию базой данных объектов состояния, или SODB.",{},{"id":667,"data":668,"type":544,"tunes":670},"816925a31d",{"text":669},"Платформа объединяет эти данные игры с отдельным компилятором шейдеров для соответствующего оборудования и среды драйвера, чтобы создать базу данных предкомпилированных шейдеров, или PSDB.",{},{"id":672,"data":673,"type":544,"tunes":675},"0f09842033",{"text":674},"Затем PSDB можно распространять через магазин вместе с игрой.",{},{"id":677,"data":678,"type":572,"tunes":680},"9ce7e91c28",{"text":679,"level":47},"Конвейер SODB → PSDB",{},{"id":682,"data":683,"type":649,"tunes":704},"bba52a816e",{"steps":684,"title":703,"orientation":648},[685,688,691,694,697,700],{"label":686,"description":687},"1. Игра создаёт SODB","Разработчик собирает информацию об объектах состояния, необходимую для описания шейдеров игры.",{"label":689,"description":690},"2. SODB отправляется вместе с игрой","База данных состояний шейдеров становится частью процесса распространения.",{"label":692,"description":693},"3. Компиляция под конкретное оборудование происходит заранее","Компилятор шейдеров создаёт правильную скомпилированную форму для поддерживаемого графического процессора и среды драйвера.",{"label":695,"description":696},"4. Создаётся PSDB","База данных предкомпилированных шейдеров содержит скомпилированные данные шейдеров для целевой среды.",{"label":698,"description":699},"5. Магазин доставляет PSDB","Скомпилированная база данных шейдеров поступает вместе с загрузкой игры или рядом с ней.",{"label":701,"description":702},"6. Windows регистрирует скомпилированные шейдеры","При запуске игры многие шейдеры уже могут присутствовать, вместо того чтобы компилироваться локально.","Как работает Advanced Shader Delivery",{},{"id":706,"data":707,"type":552,"tunes":711},"1fcbe512dc",{"body":708,"title":709,"variant":710},"\u003Cstrong>SODB = то, что может понадобиться игре.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Компилятор = превращает это в аппаратно-специфичные программы для графического процессора.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>PSDB = скомпилированный результат.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Магазин = доставляет его до начала игры.\u003C\u002Fstrong>","Самая простая мысленная модель","success",{},{"id":713,"data":714,"type":572,"tunes":716},"ac158345e6",{"text":715,"level":47},"Почему на ПК это сложнее, чем на консоли",{},{"id":718,"data":719,"type":746,"tunes":747},"77f75d14dd",{"rows":720,"title":737,"layout":738,"columns":739},[721,725,729,733],{"id":722,"label":723,"values":724},"hardware","Целевое оборудование",[13,13],{"id":726,"label":727,"values":728},"driver","Среда драйвера",[13,13],{"id":730,"label":731,"values":732},"compile","Предкомпиляция",[13,13],{"id":734,"label":735,"values":736},"cache","Стабильность кэша",[13,13],"Подготовка шейдеров на консоли и ПК","table",[740,743],{"id":741,"label":742},"console","Консоль",{"id":744,"label":745},"pc","ПК с Windows","comparison",{},{"id":749,"data":750,"type":572,"tunes":752},"284835a743",{"text":751,"level":47},"Почему обновление драйвера может иметь значение",{},{"id":754,"data":755,"type":544,"tunes":757},"348a23401d",{"text":756},"Скомпилированные шейдеры не полностью независимы от графического драйвера.",{},{"id":759,"data":760,"type":544,"tunes":762},"7c4efce81d",{"text":761},"Обновление драйвера может изменить компилятор или сделать недействительными ранее скомпилированные данные кэша.",{},{"id":764,"data":765,"type":544,"tunes":767},"fb009b6277",{"text":766},"Архитектура Advanced Shader Delivery от Microsoft предназначена для обнаружения такого изменения среды и обновления предкомпилированных данных шейдеров, вместо того чтобы оставлять игрока вручную пересобирать всё.",{},{"id":769,"data":770,"type":572,"tunes":772},"428a0ec70d",{"text":771,"level":47},"Означает ли это, что экраны компиляции шейдеров исчезнут?",{},{"id":774,"data":775,"type":544,"tunes":777},"4aa0142d15",{"text":776},"Потенциально многие из них могут стать намного короче или ненужными, но Advanced Shader Delivery не гарантирует, что любое ожидание, связанное с шейдерами, исчезнет.",{},{"id":779,"data":780,"type":544,"tunes":782},"90741fcfd5",{"text":781},"Качество SODB имеет значение. Если игра не опишет комбинации шейдеров, которые понадобятся позже, эти пропущенные случаи всё ещё могут потребовать локальной работы.",{},{"id":784,"data":785,"type":544,"tunes":787},"c5a2b190ed",{"text":786},"Обновления игры также могут вводить новые состояния шейдеров, для которых нужны новые предкомпилированные данные.",{},{"id":789,"data":790,"type":552,"tunes":794},"89507e115a",{"body":791,"title":792,"variant":793},"Advanced Shader Delivery может устранить большой класс работы по компиляции во время выполнения, но только для тех состояний шейдеров, которые были правильно захвачены, скомпилированы и распространены.","Предкомпилированный не означает полный","warning",{},{"id":796,"data":797,"type":572,"tunes":799},"8bbaf279d1",{"text":798,"level":47},"Граница доступности шейдеров",{},{"id":801,"data":802,"type":746,"tunes":828},"931b012b46",{"rows":803,"title":820,"layout":738,"columns":821},[804,808,812,816],{"id":805,"label":806,"values":807},"state","Состояние шейдера",[13,13],{"id":809,"label":810,"values":811},"target","Аппаратная цель",[13,13],{"id":813,"label":814,"values":815},"version","Версия игры",[13,13],{"id":817,"label":818,"values":819},"delivery","Распространение",[13,13],"Что определяет, может ли игра избежать локальной компиляции?",[822,825],{"id":823,"label":824},"covered","Покрывается ASD",{"id":826,"label":827},"missing","Вне поставляемой базы данных",{},{"id":830,"data":831,"type":572,"tunes":833},"e941fa79d5",{"text":832,"level":47},"Что на самом деле означают цифры Microsoft в 90% и 95%",{},{"id":835,"data":836,"type":544,"tunes":838},"0118140982",{"text":837},"Microsoft заявляет, что Advanced Shader Delivery может сократить время загрузки, связанное с шейдерами, до 90% в поддерживаемых сценариях.",{},{"id":840,"data":841,"type":544,"tunes":843},"c3971ea047",{"text":842},"Для Forza Horizon 6 Microsoft сообщила о конкретном внутреннем примере, где загрузка сократилась с почти 1,5 минут до примерно 4 секунд на системе Ryzen 7 5800 с Radeon RX 7600, что, по её описанию, составляет примерно 95% экономии времени.",{},{"id":845,"data":846,"type":544,"tunes":848},"7670e213a0",{"text":847},"Эти цифры не следует интерпретировать как универсальную гарантию для каждой игры, GPU или экрана загрузки.",{},{"id":850,"data":851,"type":572,"tunes":853},"839c0e3988",{"text":852,"level":47},"Тест диагностики шейдерных задержек",{},{"id":855,"data":856,"type":649,"tunes":877},"5aa5bd206c",{"steps":857,"title":876,"orientation":648},[858,861,864,867,870,873],{"label":859,"description":860},"1. Повторите ту же сцену","Если задержка происходит один раз и исчезает при втором запуске, прогрев кэша является сильным признаком.",{"label":862,"description":863},"2. Сравните после очистки или аннулирования кэша шейдеров","Возвращающаяся задержка может указывать на компиляцию шейдеров, а не на постоянное узкое место производительности.",{"label":865,"description":866},"3. Проверьте всплески времени кадра","Шейдерная задержка проявляется как длинные отдельные кадры, а не просто как более низкий стабильный средний FPS.",{"label":868,"description":869},"4. Отделите потоковую загрузку ресурсов от компиляции шейдеров","Оба могут вызывать задержки при перемещении, но это разные конвейеры.",{"label":871,"description":872},"5. Проверьте обновления игры и драйверов","Новое обновление может аннулировать или расширить кэши шейдеров.",{"label":874,"description":875},"6. Ищите статус ASD","В поддерживаемых приложениях Xbox PC окно запуска может указывать на то, что предварительно скомпилированные шейдеры были установлены.","Как определить, действительно ли задержка вызвана компиляцией шейдеров",{},{"id":879,"data":880,"type":572,"tunes":882},"f769a5fe57",{"text":881,"level":47},"Шейдерная задержка — это не то же самое, что задержка потоковой загрузки ресурсов",{},{"id":884,"data":885,"type":544,"tunes":887},"a97fc94605",{"text":886},"Обе проблемы могут создавать задержку при входе в новую область, что делает их легко перепутать.",{},{"id":889,"data":890,"type":544,"tunes":892},"ad12701b27",{"text":891},"Компиляция шейдеров — это создание исполняемых программ для GPU. Потоковая загрузка ресурсов — это перемещение текстур, геометрии и другого контента в доступную память.",{},{"id":894,"data":895,"type":544,"tunes":897},"b94a2dd59f",{"text":896},"Advanced Shader Delivery нацелена на первую проблему. DirectStorage нацелена на второй конвейер.",{},{"id":899,"data":900,"type":621,"tunes":905},"a9dfa4c70c",{"url":901,"title":902,"excerpt":903,"ctaLabel":904},"https:\u002F\u002Ffigure.rocks\u002Fru\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","DirectStorage 1.4 не заставляет ваш SSD распаковывать игры: что на самом деле делают Zstd и распаковка на GPU","Отдельный взгляд на путь загрузки ресурсов: чтение с SSD, планирование DirectStorage и распаковка на CPU\u002FGPU.","Читать руководство по DirectStorage",{},{"id":907,"data":908,"type":572,"tunes":910},"4dd6f52499",{"text":909,"level":47},"Почему магазин имеет значение",{},{"id":912,"data":913,"type":544,"tunes":915},"ce08ac7263",{"text":914},"Advanced Shader Delivery — это не только функция API Direct3D.",{},{"id":917,"data":918,"type":544,"tunes":920},"a0ab668bcb",{"text":919},"Система зависит от службы распространения, которая знает, какая версия игры, среда GPU и скомпилированная база данных принадлежат друг другу.",{},{"id":922,"data":923,"type":544,"tunes":925},"4eb480c656",{"text":924},"Именно поэтому текущая реализация Microsoft привязана к распространению через приложение Xbox PC, а не является чем-то, что отдельный игрок просто включает глобально.",{},{"id":927,"data":928,"type":572,"tunes":930},"b8693ba872",{"text":929,"level":47},"Почему это не просто ещё один кэш шейдеров",{},{"id":932,"data":933,"type":544,"tunes":935},"4af48bdc6c",{"text":934},"Обычный локальный кэш шейдеров создаётся после того, как ваша собственная машина уже заплатила стоимость компиляции.",{},{"id":937,"data":938,"type":544,"tunes":940},"8c45dac918",{"text":939},"Advanced Shader Delivery пытается доставить это полезное скомпилированное состояние до того, как затраты достигнут вашей машины.",{},{"id":942,"data":943,"type":746,"tunes":969},"693e6f7d83",{"rows":944,"title":961,"layout":738,"columns":962},[945,949,953,957],{"id":946,"label":947,"values":948},"when","Когда происходит компиляция",[13,13],{"id":950,"label":951,"values":952},"cost","Кто оплачивает начальные затраты на компиляцию",[13,13],{"id":954,"label":955,"values":956},"first-run","Поведение при первом запуске",[13,13],{"id":958,"label":959,"values":960},"stutter","Подтормаживание JIT-шейдеров",[13,13],"Локальный кэш шейдеров против Advanced Shader Delivery",[963,966],{"id":964,"label":965},"local","Локальный кэш шейдеров",{"id":967,"label":968},"asd","Advanced Shader Delivery",{},{"id":971,"data":972,"type":572,"tunes":974},"76cff75952",{"text":973,"level":47},"Что разработчикам действительно нужно делать",{},{"id":976,"data":977,"type":544,"tunes":979},"bfaa3db2d6",{"text":978},"Игра всё ещё должна предоставлять достаточно информации, чтобы платформа могла построить полезную базу данных.",{},{"id":981,"data":982,"type":544,"tunes":984},"ed2d5b8b93",{"text":983},"Текущий рабочий процесс Microsoft требует от разработчиков собирать или программно генерировать SODB, тестировать его путём локальной компиляции PSDB и отправлять SODB через конвейер магазина.",{},{"id":986,"data":987,"type":544,"tunes":989},"186600f899",{"text":988},"Agility SDK 1.619 также представил API идентификации приложения и статистики, чтобы разработчики могли последовательно идентифицировать игру и измерять, насколько эффективно используется PSDB.",{},{"id":991,"data":992,"type":572,"tunes":994},"da7b0ce8b5",{"text":993,"level":47},"Какое оборудование работает сегодня?",{},{"id":996,"data":997,"type":544,"tunes":999},"e2e43ce998",{"text":998},"В обновлении Microsoft от июня 2026 года указаны Windows 11 версии 24H2 или новее, требуемая версия Xbox Gaming Services, оборудование AMD Radeon на базе RDNA 1–RDNA 4 и AMD Adrenalin 26.6.1 или новее для текущего документированного пути через приложение Xbox для ПК.",{},{"id":1001,"data":1002,"type":544,"tunes":1004},"7c82f021e1",{"text":1003},"Microsoft также заявила, что работает с Intel и другими производителями оборудования, и что поддержка будет расширена на большее число устройств.",{},{"id":1006,"data":1007,"type":544,"tunes":1009},"9e9a02e41c",{"text":1008},"Это означает, что Advanced Shader Delivery следует рассматривать как расширяющуюся функцию платформы, а не как универсальную возможность Windows на любом GPU сегодня.",{},{"id":1011,"data":1012,"type":572,"tunes":1014},"bd182f72b0",{"text":1013,"level":47},"Почему это важнее очередной функции FPS",{},{"id":1016,"data":1017,"type":544,"tunes":1019},"9decb9c1b9",{"text":1018},"Апскейлинг и генерация кадров улучшают вывод конвейера рендеринга после того, как игра уже запущена.",{},{"id":1021,"data":1022,"type":544,"tunes":1024},"64eec31a18",{"text":1023},"Advanced Shader Delivery решает другую проблему качества: скачок времени кадра, вызванный подготовкой GPU-программ в неподходящий момент.",{},{"id":1026,"data":1027,"type":544,"tunes":1029},"a6a0db382e",{"text":1028},"Именно поэтому преимущество может быть заметным даже тогда, когда средний FPS вообще не меняется.",{},{"id":1031,"data":1032,"type":572,"tunes":1034},"09bde21a8d",{"text":1033,"level":47},"Что могло бы изменить этот ответ?",{},{"id":1036,"data":1037,"type":544,"tunes":1039},"b0e7ca01a4",{"text":1038},"Самая большая изменяющаяся граница — это поддержка экосистемы.",{},{"id":1041,"data":1042,"type":544,"tunes":1044},"537568c224",{"text":1043},"Microsoft всё ещё расширяет Advanced Shader Delivery на GPU, рабочие процессы магазинов и интеграции с игровыми движками. Поэтому требования к оборудованию и поддерживаемые пути распространения могут быстро меняться.",{},{"id":1046,"data":1047,"type":544,"tunes":1049},"fe24516c11",{"text":1048},"Будущая реализация, широко интегрированная в основные магазины для ПК, могла бы сделать доставку предварительно скомпилированных шейдеров гораздо более прозрачной для игроков, чем сегодня.",{},{"id":1051,"data":1052,"type":572,"tunes":1054},"0e31e2d54d",{"text":1053,"level":47},"Ограничения",{},{"id":1056,"data":1057,"type":544,"tunes":1059},"a7881e11e1",{"text":1058},"В этой статье описана документированная Microsoft архитектура Advanced Shader Delivery и текущая поддержка приложения Windows\u002FXbox для ПК по состоянию на сентябрь 2026 года.",{},{"id":1061,"data":1062,"type":544,"tunes":1064},"71ebc16fda",{"text":1063},"Заявленная Microsoft экономия времени загрузки — это измерения производителей в конкретных поддерживаемых сценариях. Их не следует рассматривать как универсальные гарантии производительности.",{},{"id":1066,"data":1067,"type":572,"tunes":1069},"f7a38af5be",{"text":1068,"level":47},"Заключение",{},{"id":1071,"data":1072,"type":544,"tunes":1074},"f1308f3e80",{"text":1073},"Advanced Shader Delivery решает простую проблему ответом на уровне платформы.",{},{"id":1076,"data":1077,"type":544,"tunes":1079},"b102a861bb",{"text":1078},"ПК-игре нужны скомпилированные шейдеры, специфичные для GPU. Их сборка на машине игрока может приводить к долгим первым запускам и подтормаживаниям из-за компиляции по мере необходимости. ASD фиксирует то, что нужно игре, компилирует это заранее для целевой среды и доставляет результат через магазин.",{},{"id":1081,"data":1082,"type":544,"tunes":1084},"da805fabf0",{"text":1083},"Шейдер по-прежнему существует. Компиляция по-прежнему происходит. Важное изменение в том, что это происходит до того, как это понадобится игроку.",{},{"id":1086,"data":1087,"type":572,"tunes":1089},"0354b8daaf",{"text":1088,"level":47},"Часто задаваемые вопросы",{},{"id":1091,"data":1092,"type":1119,"tunes":1120},"e75bc04532",{"items":1093,"title":1118},[1094,1098,1102,1106,1110,1114],{"id":1095,"answer":1096,"question":1097},"faq1","Технология Windows 11 Direct3D 12, которая предварительно компилирует шейдеры заранее и доставляет их вместе с игрой вместо компиляции всего на ПК игрока.","Что такое Advanced Shader Delivery?",{"id":1099,"answer":1100,"question":1101},"faq2","База данных объектов состояния (State Object Database), описывающая состояния шейдеров, которые могут понадобиться игре, чтобы их можно было скомпилировать до доставки.","Что такое SODB?",{"id":1103,"answer":1104,"question":1105},"faq3","База данных предварительно скомпилированных шейдеров (Precompiled Shader Database), содержащая шейдерные программы, уже скомпилированные для целевой аппаратной и драйверной среды.","Что такое PSDB?",{"id":1107,"answer":1108,"question":1109},"faq4","Не автоматически. Отсутствующие состояния шейдеров, неподдерживаемые среды или новый игровой контент всё ещё могут требовать локальной компиляции.","Устраняет ли ASD все подтормаживания из-за шейдеров?",{"id":1111,"answer":1112,"question":1113},"faq5","Нет. Локальный кэш создаётся после того, как ваш ПК скомпилирует шейдеры. ASD пытается доставить скомпилированные данные шейдеров до того, как вы запустите игру.","ASD — это то же самое, что локальный кэш шейдеров?",{"id":1115,"answer":1116,"question":1117},"faq6","Его основная цель — более быстрая подготовка шейдеров и меньше связанных с компиляцией скачков времени кадра, а не повышение стабильного FPS.","Увеличивает ли Advanced Shader Delivery FPS?","Advanced Shader Delivery простыми словами","faq",{},{"id":1122,"data":1123,"type":572,"tunes":1125},"8733f298cd",{"text":1124,"level":47},"Глоссарий",{},{"id":1127,"data":1128,"type":1158,"tunes":1159},"407257a6d1",{"title":1129,"entries":1130},"Ключевые термины доставки шейдеров",[1131,1135,1139,1143,1147,1151,1154],{"term":1132,"anchor":1133,"definition":1134},"Шейдер","shader","Программа для GPU, используемая для графических или вычислительных задач, таких как освещение, материалы и постобработка.",{"term":1136,"anchor":1137,"definition":1138},"Компиляция шейдеров","shader-compilation","Преобразование кода шейдера в специфичную для GPU исполняемую форму, которую могут запускать драйвер и аппаратное обеспечение.",{"term":1140,"anchor":1141,"definition":1142},"SODB","sodb","База данных объектов состояния, содержащая информацию о состояниях шейдеров, собранную из игры или сгенерированную для неё.",{"term":1144,"anchor":1145,"definition":1146},"PSDB","psdb","База данных предварительно скомпилированных шейдеров, содержащая данные шейдеров, скомпилированные заранее для целевой среды.",{"term":1148,"anchor":1149,"definition":1150},"JIT-компиляция","jit-compilation","Компиляция по мере необходимости, выполняемая при первом использовании шейдера во время запуска или игрового процесса.",{"term":798,"anchor":1152,"definition":1153},"shader-availability-boundary","Модель Figure Rocks, описывающая, когда шейдер может быть предоставлен из доставленных предварительно скомпилированных данных, а когда всё ещё требуется локальная компиляция.",{"term":1155,"anchor":1156,"definition":1157},"Тест диагностики подтормаживаний из-за шейдеров","shader-stutter-diagnosis-test","Рабочий процесс Figure Rocks для отделения задержек, вызванных компиляцией шейдеров, от других причин скачков времени кадра.","glossary",{},{"id":1161,"data":1162,"type":572,"tunes":1164},"3ab856f2b4",{"text":1163,"level":47},"Первоисточники",{},{"id":1166,"data":1167,"type":1173,"tunes":1174},"367d2e3548",{"link":1168,"meta":1169},"https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fwindows\u002Fwin32\u002Fdirect3d12\u002Fadvanced-shader-delivery",{"image":1170,"title":1171,"description":1172},{"url":13},"Microsoft Learn — Advanced Shader Delivery","Официальная документация Windows, описывающая рабочий процесс от SODB к PSDB, преимущества и текущую модель платформы.","linkTool",{},{"id":1176,"data":1177,"type":1173,"tunes":1183},"5641b514c0",{"link":1178,"meta":1179},"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fintroducing-advanced-shader-delivery\u002F",{"image":1180,"title":1181,"description":1182},{"url":13},"Microsoft DirectX — Introducing Advanced Shader Delivery","Официальное объяснение архитектуры, охватывающее локальную компиляцию шейдеров, SODB, PSDB и распространение через магазины.",{},{"id":1185,"data":1186,"type":1173,"tunes":1192},"22a5b77a1b",{"link":1187,"meta":1188},"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fadvanced-shader-delivery-whats-new-at-gdc-2026\u002F",{"image":1189,"title":1190,"description":1191},{"url":13},"Microsoft DirectX — Advanced Shader Delivery at GDC 2026","Официальное обновление для разработчиков 2026 года, охватывающее интеграцию SODB, идентификацию приложений, статистику и рабочий процесс Xbox Partner Center.",{},{"id":1194,"data":1195,"type":1173,"tunes":1201},"cc3301d997",{"link":1196,"meta":1197},"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fadvanced-shader-delivery-expands-public-preview-with-amd\u002F",{"image":1198,"title":1199,"description":1200},{"url":13},"Microsoft DirectX — Advanced Shader Delivery expands with AMD","Официальное обновление о доступности 2026 года, охватывающее Windows 11, поддержку AMD RDNA, распространение через приложение Xbox для ПК и измерения Forza Horizon 6.",{},"2.31","Заикание шейдеров возникает, когда компьютерной игре приходится компилировать программы для GPU в неподходящий момент. Microsoft Advanced Shader Delivery переносит большую часть этой работы с ПК игрока, подготавливая шейдеры для конкретного оборудования заранее и поставляя их вместе с игрой.","\u002Fuploads\u002F2026\u002F09\u002Fwhy-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it-1790406602956-ewtgf3.webp","why-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it-1790406602956-ewtgf3",false,"PUBLISHED","2026-09-26T01:08:00.000Z","2026-09-26T07:08:09.269Z","2026-09-26T07:43:04.346Z",{"en":1212,"de":1213,"sr":1214,"es":1215,"fr":1216,"it":1217,"ru":1218,"zh":1219},"\u002Fblog\u002Fwhy-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it","\u002Fde\u002Fblog\u002Fwhy-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it","\u002Fsr\u002Fblog\u002Fwhy-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it","\u002Fes\u002Fblog\u002Fwhy-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it","\u002Ffr\u002Fblog\u002Fwhy-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it","\u002Fit\u002Fblog\u002Fwhy-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it","\u002Fru\u002Fblog\u002Fwhy-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it","\u002Fzh\u002Fblog\u002Fwhy-pc-games-stutter-when-compiling-shaders-and-how-advanced-shader-delivery-changes-it",[1221,1225,1227,1231,1235,1239],{"id":1222,"name":1223,"slug":1224},62,"Статтеры шейдеров","shader-stutter",{"id":1226,"name":1136,"slug":1137},236,{"id":1228,"name":1229,"slug":1230},328,"Определите тип статтера","identify-stutter-type",{"id":1232,"name":1233,"slug":1234},253,"Частота обновления и четкость","refresh-and-clarity",{"id":1236,"name":1237,"slug":1238},251,"Размытие и персистенция","blur-and-persistence",{"id":1240,"name":1241,"slug":1242},137,"Настройки, которые имеют значение","settings-that-matter",{"id":283,"login":1244,"email":1245,"displayName":1246},"aleksandar","aleksandar@stajic.de","Aleksandar Stajic",[1248,1771],{"lang":8,"title":1249,"content":1250,"contentJson":1251,"excerpt":1770},"Why PC Games Stutter When Compiling Shaders — and How Advanced Shader Delivery Changes It","{\"time\":1790406603890,\"blocks\":[{\"id\":\"3cee674645\",\"type\":\"paragraph\",\"data\":{\"text\":\"PC shader stutter exists because a game often cannot use a shader until that shader has been compiled for the exact GPU and driver environment running the game. Microsoft Advanced Shader Delivery changes where that compilation happens: instead of waiting for the player's PC, the work can be done ahead of time and the compiled shader data can arrive with the game.\"},\"tunes\":{}},{\"id\":\"24a1733ca8\",\"type\":\"callout\",\"data\":{\"variant\":\"info\",\"title\":\"Direct answer\",\"body\":\"\u003Cstrong>Advanced Shader Delivery does not make shaders disappear.\u003C\u002Fstrong> It moves much of the compilation work away from the player's PC. A game supplies shader state information, the platform builds hardware-specific precompiled shader databases, and the storefront delivers the right compiled data to the player.\"},\"tunes\":{}},{\"id\":\"48a3661d84\",\"type\":\"callout\",\"data\":{\"variant\":\"note\",\"title\":\"Current status in 2026\",\"body\":\"Advanced Shader Delivery is available through the Xbox PC app for supported Windows 11 systems and currently has documented AMD RDNA support. Microsoft says broader hardware support is still expanding.\"},\"tunes\":{}},{\"id\":\"2a609230a5\",\"type\":\"tableOfContents\",\"data\":{\"title\":\"Contents\",\"minLevel\":2,\"maxLevel\":3},\"tunes\":{}},{\"id\":\"629087889e\",\"type\":\"header\",\"data\":{\"text\":\"Why PC games compile shaders in the first place\",\"level\":2},\"tunes\":{}},{\"id\":\"598e794c99\",\"type\":\"paragraph\",\"data\":{\"text\":\"A shader is a small GPU program used for rendering tasks such as lighting, materials, shadows, post-processing and other graphics work.\"},\"tunes\":{}},{\"id\":\"72d7b4a8a7\",\"type\":\"paragraph\",\"data\":{\"text\":\"The game usually ships shader code in an intermediate form. Before the GPU can execute it efficiently, the graphics driver compiles that code into a hardware-specific form.\"},\"tunes\":{}},{\"id\":\"dc6d594d0a\",\"type\":\"paragraph\",\"data\":{\"text\":\"On a console, the target hardware and driver environment are much more predictable. On a Windows PC, the game may run on many GPU models, driver versions and system configurations.\"},\"tunes\":{}},{\"id\":\"66bff5badb\",\"type\":\"paragraph\",\"data\":{\"text\":\"That hardware matrix is the reason PC shader compilation is harder to prepare completely in advance.\"},\"tunes\":{}},{\"id\":\"9d6edb14c9\",\"type\":\"header\",\"data\":{\"text\":\"Where shader stutter comes from\",\"level\":2},\"tunes\":{}},{\"id\":\"ed90f5091b\",\"type\":\"paragraph\",\"data\":{\"text\":\"If the game encounters a shader that is not already compiled, the driver may have to compile it while the game is running.\"},\"tunes\":{}},{\"id\":\"7551ab324d\",\"type\":\"paragraph\",\"data\":{\"text\":\"That work can interrupt the normal frame pipeline. The result can be a short hitch even when average FPS is high.\"},\"tunes\":{}},{\"id\":\"a75fc2b3d4\",\"type\":\"paragraph\",\"data\":{\"text\":\"Once the compiled shader has been cached, the same hitch may not happen again until the cache is invalidated or new shader combinations are needed.\"},\"tunes\":{}},{\"id\":\"6aed79503f\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Ffigure.rocks\u002Fblog\u002Fwhy-120-fps-can-still-feel-bad-frame-time-1-lows-and-stutter-explained\",\"title\":\"Why 120 FPS Can Still Feel Bad: Frame Time, 1% Lows and Stutter Explained\",\"excerpt\":\"Why average FPS can look healthy while a few long frames make the game feel uneven.\",\"ctaLabel\":\"Read the frame-time guide\"},\"tunes\":{}},{\"id\":\"6417a8a29e\",\"type\":\"header\",\"data\":{\"text\":\"The normal shader-compilation path\",\"level\":2},\"tunes\":{}},{\"id\":\"a28d732096\",\"type\":\"processFlow\",\"data\":{\"title\":\"Without Advanced Shader Delivery\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Game ships shader source or intermediate data\",\"description\":\"The package contains what the driver needs to build GPU-specific programs.\"},{\"label\":\"2. Player launches the game\",\"description\":\"The system does not yet have every compiled shader variant in cache.\"},{\"label\":\"3. Driver compiles shaders locally\",\"description\":\"Compilation happens at startup, during a dedicated precompilation screen, or just in time during gameplay.\"},{\"label\":\"4. Compiled shaders are cached\",\"description\":\"Future runs can reuse the results while the cache remains valid.\"},{\"label\":\"5. Driver or game changes can invalidate the cache\",\"description\":\"The system may need to compile again after relevant updates.\"}]},\"tunes\":{}},{\"id\":\"873418b9cd\",\"type\":\"header\",\"data\":{\"text\":\"What Advanced Shader Delivery changes\",\"level\":2},\"tunes\":{}},{\"id\":\"2d58ee74cb\",\"type\":\"paragraph\",\"data\":{\"text\":\"Advanced Shader Delivery moves the expensive compilation step into a distribution pipeline.\"},\"tunes\":{}},{\"id\":\"265d255da5\",\"type\":\"paragraph\",\"data\":{\"text\":\"The game provides a standardized description of the shader state objects it can need. Microsoft calls that collection a State Object Database, or SODB.\"},\"tunes\":{}},{\"id\":\"816925a31d\",\"type\":\"paragraph\",\"data\":{\"text\":\"The platform combines that game data with a separated shader compiler for the relevant hardware and driver environment to produce a Precompiled Shader Database, or PSDB.\"},\"tunes\":{}},{\"id\":\"0f09842033\",\"type\":\"paragraph\",\"data\":{\"text\":\"The PSDB can then be distributed through the storefront alongside the game.\"},\"tunes\":{}},{\"id\":\"9ce7e91c28\",\"type\":\"header\",\"data\":{\"text\":\"The SODB → PSDB pipeline\",\"level\":2},\"tunes\":{}},{\"id\":\"bba52a816e\",\"type\":\"processFlow\",\"data\":{\"title\":\"How Advanced Shader Delivery works\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Game creates an SODB\",\"description\":\"The developer collects the state-object information needed to describe the game's shaders.\"},{\"label\":\"2. SODB is submitted with the game\",\"description\":\"The shader-state database becomes part of the distribution workflow.\"},{\"label\":\"3. Hardware-specific compilation happens ahead of time\",\"description\":\"The shader compiler produces the correct compiled form for a supported GPU and driver environment.\"},{\"label\":\"4. A PSDB is produced\",\"description\":\"The Precompiled Shader Database contains compiled shader data for that target environment.\"},{\"label\":\"5. Storefront delivers the PSDB\",\"description\":\"The compiled shader database arrives with or alongside the game download.\"},{\"label\":\"6. Windows registers the compiled shaders\",\"description\":\"When the game starts, many shaders can already be present instead of being compiled locally.\"}]},\"tunes\":{}},{\"id\":\"1fcbe512dc\",\"type\":\"callout\",\"data\":{\"variant\":\"success\",\"title\":\"The simplest mental model\",\"body\":\"\u003Cstrong>SODB = what the game may need.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Compiler = turns it into hardware-specific GPU programs.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>PSDB = the compiled result.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Storefront = delivers it before you play.\u003C\u002Fstrong>\"},\"tunes\":{}},{\"id\":\"ac158345e6\",\"type\":\"header\",\"data\":{\"text\":\"Why this is harder on PC than on console\",\"level\":2},\"tunes\":{}},{\"id\":\"77f75d14dd\",\"type\":\"comparison\",\"data\":{\"title\":\"Console vs PC shader preparation\",\"layout\":\"table\",\"columns\":[{\"id\":\"console\",\"label\":\"Console\"},{\"id\":\"pc\",\"label\":\"Windows PC\"}],\"rows\":[{\"id\":\"hardware\",\"label\":\"Hardware target\",\"values\":[\"\",\"\"]},{\"id\":\"driver\",\"label\":\"Driver environment\",\"values\":[\"\",\"\"]},{\"id\":\"compile\",\"label\":\"Precompilation\",\"values\":[\"\",\"\"]},{\"id\":\"cache\",\"label\":\"Cache stability\",\"values\":[\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"284835a743\",\"type\":\"header\",\"data\":{\"text\":\"Why a driver update can matter\",\"level\":2},\"tunes\":{}},{\"id\":\"348a23401d\",\"type\":\"paragraph\",\"data\":{\"text\":\"Compiled shaders are not completely independent of the graphics driver.\"},\"tunes\":{}},{\"id\":\"7c4efce81d\",\"type\":\"paragraph\",\"data\":{\"text\":\"A driver update can change the compiler or invalidate previously compiled cache data.\"},\"tunes\":{}},{\"id\":\"fb009b6277\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft's Advanced Shader Delivery architecture is designed to detect that environment change and refresh the precompiled shader data instead of leaving the player to rebuild everything manually.\"},\"tunes\":{}},{\"id\":\"428a0ec70d\",\"type\":\"header\",\"data\":{\"text\":\"Does this mean shader compilation screens disappear?\",\"level\":2},\"tunes\":{}},{\"id\":\"4aa0142d15\",\"type\":\"paragraph\",\"data\":{\"text\":\"Potentially many of them can become much shorter or unnecessary, but Advanced Shader Delivery does not guarantee that every shader-related wait disappears.\"},\"tunes\":{}},{\"id\":\"90741fcfd5\",\"type\":\"paragraph\",\"data\":{\"text\":\"The quality of the SODB matters. If the game fails to describe shader combinations that are later needed, those missing cases may still require local work.\"},\"tunes\":{}},{\"id\":\"c5a2b190ed\",\"type\":\"paragraph\",\"data\":{\"text\":\"Game updates can also introduce new shader states that need new precompiled data.\"},\"tunes\":{}},{\"id\":\"89507e115a\",\"type\":\"callout\",\"data\":{\"variant\":\"warning\",\"title\":\"Precompiled does not mean complete\",\"body\":\"Advanced Shader Delivery can remove a large class of runtime compilation work, but only for shader states that have been captured, compiled and distributed correctly.\"},\"tunes\":{}},{\"id\":\"8bbaf279d1\",\"type\":\"header\",\"data\":{\"text\":\"The Shader Availability Boundary\",\"level\":2},\"tunes\":{}},{\"id\":\"931b012b46\",\"type\":\"comparison\",\"data\":{\"title\":\"What decides whether the game can avoid local compilation?\",\"layout\":\"table\",\"columns\":[{\"id\":\"covered\",\"label\":\"Covered by ASD\"},{\"id\":\"missing\",\"label\":\"Outside the delivered database\"}],\"rows\":[{\"id\":\"state\",\"label\":\"Shader state\",\"values\":[\"\",\"\"]},{\"id\":\"target\",\"label\":\"Hardware target\",\"values\":[\"\",\"\"]},{\"id\":\"version\",\"label\":\"Game version\",\"values\":[\"\",\"\"]},{\"id\":\"delivery\",\"label\":\"Distribution\",\"values\":[\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"e941fa79d5\",\"type\":\"header\",\"data\":{\"text\":\"What Microsoft's 90% and 95% numbers actually mean\",\"level\":2},\"tunes\":{}},{\"id\":\"0118140982\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft says Advanced Shader Delivery can reduce shader-related loading time by up to 90% in supported scenarios.\"},\"tunes\":{}},{\"id\":\"c3971ea047\",\"type\":\"paragraph\",\"data\":{\"text\":\"For Forza Horizon 6, Microsoft reported a specific internal example where loading dropped from almost 1.5 minutes to about 4 seconds on a Ryzen 7 5800 system with a Radeon RX 7600, which it described as roughly a 95% time saving.\"},\"tunes\":{}},{\"id\":\"7670e213a0\",\"type\":\"paragraph\",\"data\":{\"text\":\"Those figures should not be interpreted as a universal guarantee for every game, GPU or loading screen.\"},\"tunes\":{}},{\"id\":\"839c0e3988\",\"type\":\"header\",\"data\":{\"text\":\"The Shader-Stutter Diagnosis Test\",\"level\":2},\"tunes\":{}},{\"id\":\"5aa5bd206c\",\"type\":\"processFlow\",\"data\":{\"title\":\"How to tell whether a hitch is really shader compilation\",\"orientation\":\"auto\",\"steps\":[{\"label\":\"1. Repeat the same scene\",\"description\":\"If the hitch happens once and disappears on the second run, cache warm-up is a strong clue.\"},{\"label\":\"2. Compare after clearing or invalidating shader cache\",\"description\":\"A returning hitch can indicate shader compilation rather than a permanent performance bottleneck.\"},{\"label\":\"3. Check frame-time spikes\",\"description\":\"Shader stutter appears as long individual frames, not merely a lower stable average FPS.\"},{\"label\":\"4. Separate asset streaming from shader compilation\",\"description\":\"Both can produce traversal stutter, but they are different pipelines.\"},{\"label\":\"5. Check game and driver updates\",\"description\":\"A new update can invalidate or expand shader caches.\"},{\"label\":\"6. Look for ASD status\",\"description\":\"In supported Xbox PC app titles, the launch window can indicate that precompiled shaders were installed.\"}]},\"tunes\":{}},{\"id\":\"f769a5fe57\",\"type\":\"header\",\"data\":{\"text\":\"Shader stutter is not the same as asset-streaming stutter\",\"level\":2},\"tunes\":{}},{\"id\":\"a97fc94605\",\"type\":\"paragraph\",\"data\":{\"text\":\"Both problems can create a hitch when entering a new area, which makes them easy to confuse.\"},\"tunes\":{}},{\"id\":\"ad12701b27\",\"type\":\"paragraph\",\"data\":{\"text\":\"Shader compilation is about creating executable GPU programs. Asset streaming is about moving textures, geometry and other content into usable memory.\"},\"tunes\":{}},{\"id\":\"b94a2dd59f\",\"type\":\"paragraph\",\"data\":{\"text\":\"Advanced Shader Delivery targets the first problem. DirectStorage targets the second pipeline.\"},\"tunes\":{}},{\"id\":\"a9dfa4c70c\",\"type\":\"referralArticle\",\"data\":{\"url\":\"https:\u002F\u002Ffigure.rocks\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do\",\"title\":\"DirectStorage 1.4 Does Not Make Your SSD Decompress Games: What Zstd and GPU Decompression Actually Do\",\"excerpt\":\"A separate look at the asset-loading path: SSD reads, DirectStorage scheduling and CPU\u002FGPU decompression.\",\"ctaLabel\":\"Read the DirectStorage guide\"},\"tunes\":{}},{\"id\":\"4dd6f52499\",\"type\":\"header\",\"data\":{\"text\":\"Why the storefront matters\",\"level\":2},\"tunes\":{}},{\"id\":\"ce08ac7263\",\"type\":\"paragraph\",\"data\":{\"text\":\"Advanced Shader Delivery is not only a Direct3D API feature.\"},\"tunes\":{}},{\"id\":\"a0ab668bcb\",\"type\":\"paragraph\",\"data\":{\"text\":\"The system depends on a distribution service that knows which game version, GPU environment and compiled database belong together.\"},\"tunes\":{}},{\"id\":\"4eb480c656\",\"type\":\"paragraph\",\"data\":{\"text\":\"That is why Microsoft's current implementation is tied to Xbox PC app distribution rather than being something an individual player simply switches on globally.\"},\"tunes\":{}},{\"id\":\"b8693ba872\",\"type\":\"header\",\"data\":{\"text\":\"Why this is not just another shader cache\",\"level\":2},\"tunes\":{}},{\"id\":\"4af48bdc6c\",\"type\":\"paragraph\",\"data\":{\"text\":\"A normal local shader cache is built after your own machine has already paid the compilation cost.\"},\"tunes\":{}},{\"id\":\"8c45dac918\",\"type\":\"paragraph\",\"data\":{\"text\":\"Advanced Shader Delivery attempts to deliver that useful compiled state before the cost reaches your machine.\"},\"tunes\":{}},{\"id\":\"693e6f7d83\",\"type\":\"comparison\",\"data\":{\"title\":\"Local shader cache vs Advanced Shader Delivery\",\"layout\":\"table\",\"columns\":[{\"id\":\"local\",\"label\":\"Local shader cache\"},{\"id\":\"asd\",\"label\":\"Advanced Shader Delivery\"}],\"rows\":[{\"id\":\"when\",\"label\":\"When compilation happens\",\"values\":[\"\",\"\"]},{\"id\":\"cost\",\"label\":\"Who pays the initial compile cost\",\"values\":[\"\",\"\"]},{\"id\":\"first-run\",\"label\":\"First-run behavior\",\"values\":[\"\",\"\"]},{\"id\":\"stutter\",\"label\":\"JIT shader stutter\",\"values\":[\"\",\"\"]}]},\"tunes\":{}},{\"id\":\"76cff75952\",\"type\":\"header\",\"data\":{\"text\":\"What developers actually have to do\",\"level\":2},\"tunes\":{}},{\"id\":\"bfaa3db2d6\",\"type\":\"paragraph\",\"data\":{\"text\":\"The game still has to expose enough information for the platform to build a useful database.\"},\"tunes\":{}},{\"id\":\"ed2d5b8b93\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft's current workflow asks developers to collect or programmatically generate an SODB, test it by compiling a PSDB locally, and submit the SODB through the storefront pipeline.\"},\"tunes\":{}},{\"id\":\"186600f899\",\"type\":\"paragraph\",\"data\":{\"text\":\"Agility SDK 1.619 also introduced application identity and statistics APIs so developers can identify the title consistently and measure how effectively a PSDB is being used.\"},\"tunes\":{}},{\"id\":\"da7b0ce8b5\",\"type\":\"header\",\"data\":{\"text\":\"What hardware works today?\",\"level\":2},\"tunes\":{}},{\"id\":\"e2e43ce998\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft's June 2026 update lists Windows 11 version 24H2 or newer, the required Xbox Gaming Services version, AMD Radeon hardware based on RDNA 1 through RDNA 4, and AMD Adrenalin 26.6.1 or newer for the currently documented Xbox PC app path.\"},\"tunes\":{}},{\"id\":\"7c82f021e1\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft has also said it is working with Intel and other hardware vendors, and that support will expand to more devices.\"},\"tunes\":{}},{\"id\":\"9e9a02e41c\",\"type\":\"paragraph\",\"data\":{\"text\":\"That means Advanced Shader Delivery should be treated as an expanding platform feature rather than a universal Windows capability on every GPU today.\"},\"tunes\":{}},{\"id\":\"bd182f72b0\",\"type\":\"header\",\"data\":{\"text\":\"Why this matters more than another FPS feature\",\"level\":2},\"tunes\":{}},{\"id\":\"9decb9c1b9\",\"type\":\"paragraph\",\"data\":{\"text\":\"Upscaling and frame generation improve the output of the rendering pipeline after the game is already running.\"},\"tunes\":{}},{\"id\":\"64eec31a18\",\"type\":\"paragraph\",\"data\":{\"text\":\"Advanced Shader Delivery attacks a different quality problem: a frame-time spike caused by preparing GPU programs at the wrong moment.\"},\"tunes\":{}},{\"id\":\"a6a0db382e\",\"type\":\"paragraph\",\"data\":{\"text\":\"That is why the benefit can be visible even when average FPS does not change at all.\"},\"tunes\":{}},{\"id\":\"09bde21a8d\",\"type\":\"header\",\"data\":{\"text\":\"What would change this answer?\",\"level\":2},\"tunes\":{}},{\"id\":\"b0e7ca01a4\",\"type\":\"paragraph\",\"data\":{\"text\":\"The biggest moving boundary is ecosystem support.\"},\"tunes\":{}},{\"id\":\"537568c224\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft is still expanding Advanced Shader Delivery across GPUs, storefront workflows and game-engine integrations. Hardware requirements and supported distribution paths can therefore change quickly.\"},\"tunes\":{}},{\"id\":\"fe24516c11\",\"type\":\"paragraph\",\"data\":{\"text\":\"A future implementation integrated broadly across major PC storefronts could make precompiled shader delivery much more transparent to players than it is today.\"},\"tunes\":{}},{\"id\":\"0e31e2d54d\",\"type\":\"header\",\"data\":{\"text\":\"Limitations\",\"level\":2},\"tunes\":{}},{\"id\":\"a7881e11e1\",\"type\":\"paragraph\",\"data\":{\"text\":\"This article describes Microsoft's documented Advanced Shader Delivery architecture and current Windows\u002FXbox PC app support as of September 2026.\"},\"tunes\":{}},{\"id\":\"71ebc16fda\",\"type\":\"paragraph\",\"data\":{\"text\":\"Microsoft's reported load-time savings are vendor measurements from specific supported scenarios. They should not be treated as universal performance guarantees.\"},\"tunes\":{}},{\"id\":\"f7a38af5be\",\"type\":\"header\",\"data\":{\"text\":\"Conclusion\",\"level\":2},\"tunes\":{}},{\"id\":\"f1308f3e80\",\"type\":\"paragraph\",\"data\":{\"text\":\"Advanced Shader Delivery solves a simple problem with a platform-level answer.\"},\"tunes\":{}},{\"id\":\"b102a861bb\",\"type\":\"paragraph\",\"data\":{\"text\":\"A PC game needs GPU-specific compiled shaders. Building them on the player's machine can cause long first launches and just-in-time stutter. ASD captures what the game needs, compiles it ahead of time for the target environment and delivers the result through the storefront.\"},\"tunes\":{}},{\"id\":\"da805fabf0\",\"type\":\"paragraph\",\"data\":{\"text\":\"The shader still exists. The compilation still happens. The important change is that it happens before the player needs it.\"},\"tunes\":{}},{\"id\":\"0354b8daaf\",\"type\":\"header\",\"data\":{\"text\":\"FAQ\",\"level\":2},\"tunes\":{}},{\"id\":\"e75bc04532\",\"type\":\"faq\",\"data\":{\"title\":\"Advanced Shader Delivery in plain English\",\"items\":[{\"id\":\"faq1\",\"question\":\"What is Advanced Shader Delivery?\",\"answer\":\"A Windows 11 Direct3D 12 technology that precompiles shaders ahead of time and delivers them with the game instead of compiling everything on the player's PC.\"},{\"id\":\"faq2\",\"question\":\"What is an SODB?\",\"answer\":\"A State Object Database describing the shader states a game may need so they can be compiled ahead of delivery.\"},{\"id\":\"faq3\",\"question\":\"What is a PSDB?\",\"answer\":\"A Precompiled Shader Database containing shader programs already compiled for a target hardware and driver environment.\"},{\"id\":\"faq4\",\"question\":\"Does ASD eliminate all shader stutter?\",\"answer\":\"Not automatically. Missing shader states, unsupported environments or new game content can still require local compilation.\"},{\"id\":\"faq5\",\"question\":\"Is ASD the same as a local shader cache?\",\"answer\":\"No. A local cache is created after your PC compiles shaders. ASD tries to deliver compiled shader data before you run the game.\"},{\"id\":\"faq6\",\"question\":\"Does Advanced Shader Delivery increase FPS?\",\"answer\":\"Its main purpose is faster shader preparation and fewer compilation-related frame-time spikes, not higher steady-state FPS.\"}]},\"tunes\":{}},{\"id\":\"8733f298cd\",\"type\":\"header\",\"data\":{\"text\":\"Glossary\",\"level\":2},\"tunes\":{}},{\"id\":\"407257a6d1\",\"type\":\"glossary\",\"data\":{\"title\":\"Key shader-delivery terms\",\"entries\":[{\"term\":\"Shader\",\"definition\":\"A GPU program used for graphics or compute work such as lighting, materials and post-processing.\",\"anchor\":\"shader\"},{\"term\":\"Shader compilation\",\"definition\":\"Turning shader code into a GPU-specific executable form that the driver and hardware can run.\",\"anchor\":\"shader-compilation\"},{\"term\":\"SODB\",\"definition\":\"State Object Database containing shader-state information collected from or generated for a game.\",\"anchor\":\"sodb\"},{\"term\":\"PSDB\",\"definition\":\"Precompiled Shader Database containing shader data compiled ahead of time for a target environment.\",\"anchor\":\"psdb\"},{\"term\":\"JIT compilation\",\"definition\":\"Just-in-time compilation performed when a shader is first needed during startup or gameplay.\",\"anchor\":\"jit-compilation\"},{\"term\":\"Shader Availability Boundary\",\"definition\":\"A Figure Rocks model describing when a shader can be served from delivered precompiled data and when local compilation is still required.\",\"anchor\":\"shader-availability-boundary\"},{\"term\":\"Shader-Stutter Diagnosis Test\",\"definition\":\"A Figure Rocks workflow for separating shader-compilation hitches from other causes of frame-time spikes.\",\"anchor\":\"shader-stutter-diagnosis-test\"}]},\"tunes\":{}},{\"id\":\"3ab856f2b4\",\"type\":\"header\",\"data\":{\"text\":\"Primary sources\",\"level\":2},\"tunes\":{}},{\"id\":\"367d2e3548\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Flearn.microsoft.com\u002Fen-us\u002Fwindows\u002Fwin32\u002Fdirect3d12\u002Fadvanced-shader-delivery\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Microsoft Learn — Advanced Shader Delivery\",\"description\":\"Official Windows documentation covering the SODB-to-PSDB workflow, benefits and current platform model.\"}},\"tunes\":{}},{\"id\":\"5641b514c0\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fintroducing-advanced-shader-delivery\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Microsoft DirectX — Introducing Advanced Shader Delivery\",\"description\":\"Official architecture explanation covering local shader compilation, SODB, PSDB and storefront distribution.\"}},\"tunes\":{}},{\"id\":\"22a5b77a1b\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fadvanced-shader-delivery-whats-new-at-gdc-2026\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Microsoft DirectX — Advanced Shader Delivery at GDC 2026\",\"description\":\"Official 2026 developer update covering SODB integration, application identity, statistics and Xbox Partner Center workflow.\"}},\"tunes\":{}},{\"id\":\"cc3301d997\",\"type\":\"linkTool\",\"data\":{\"link\":\"https:\u002F\u002Fdevblogs.microsoft.com\u002Fdirectx\u002Fadvanced-shader-delivery-expands-public-preview-with-amd\u002F\",\"meta\":{\"image\":{\"url\":\"\"},\"title\":\"Microsoft DirectX — Advanced Shader Delivery expands with AMD\",\"description\":\"Official 2026 availability update covering Windows 11, AMD RDNA support, Xbox PC app distribution and Forza Horizon 6 measurements.\"}},\"tunes\":{}}],\"version\":\"2.31.6\"}",{"time":1252,"blocks":1253,"version":1769},1790406603890,[1254,1258,1263,1268,1272,1276,1280,1284,1288,1292,1296,1300,1304,1308,1315,1319,1339,1343,1347,1351,1355,1359,1363,1386,1391,1395,1417,1421,1425,1429,1433,1437,1441,1445,1449,1454,1458,1479,1483,1487,1491,1495,1499,1522,1526,1530,1534,1538,1545,1549,1553,1557,1561,1565,1569,1573,1594,1598,1602,1606,1610,1614,1618,1622,1626,1630,1634,1638,1642,1646,1650,1654,1658,1662,1666,1670,1674,1678,1682,1686,1690,1713,1717,1741,1745,1751,1757,1763],{"id":541,"data":1255,"type":544,"tunes":1257},{"text":1256},"PC shader stutter exists because a game often cannot use a shader until that shader has been compiled for the exact GPU and driver environment running the game. Microsoft Advanced Shader Delivery changes where that compilation happens: instead of waiting for the player's PC, the work can be done ahead of time and the compiled shader data can arrive with the game.",{},{"id":547,"data":1259,"type":552,"tunes":1262},{"body":1260,"title":1261,"variant":551},"\u003Cstrong>Advanced Shader Delivery does not make shaders disappear.\u003C\u002Fstrong> It moves much of the compilation work away from the player's PC. A game supplies shader state information, the platform builds hardware-specific precompiled shader databases, and the storefront delivers the right compiled data to the player.","Direct answer",{},{"id":555,"data":1264,"type":552,"tunes":1267},{"body":1265,"title":1266,"variant":559},"Advanced Shader Delivery is available through the Xbox PC app for supported Windows 11 systems and currently has documented AMD RDNA support. Microsoft says broader hardware support is still expanding.","Current status in 2026",{},{"id":562,"data":1269,"type":566,"tunes":1271},{"title":1270,"maxLevel":565,"minLevel":47},"Contents",{},{"id":569,"data":1273,"type":572,"tunes":1275},{"text":1274,"level":47},"Why PC games compile shaders in the first place",{},{"id":575,"data":1277,"type":544,"tunes":1279},{"text":1278},"A shader is a small GPU program used for rendering tasks such as lighting, materials, shadows, post-processing and other graphics work.",{},{"id":580,"data":1281,"type":544,"tunes":1283},{"text":1282},"The game usually ships shader code in an intermediate form. Before the GPU can execute it efficiently, the graphics driver compiles that code into a hardware-specific form.",{},{"id":585,"data":1285,"type":544,"tunes":1287},{"text":1286},"On a console, the target hardware and driver environment are much more predictable. On a Windows PC, the game may run on many GPU models, driver versions and system configurations.",{},{"id":590,"data":1289,"type":544,"tunes":1291},{"text":1290},"That hardware matrix is the reason PC shader compilation is harder to prepare completely in advance.",{},{"id":595,"data":1293,"type":572,"tunes":1295},{"text":1294,"level":47},"Where shader stutter comes from",{},{"id":600,"data":1297,"type":544,"tunes":1299},{"text":1298},"If the game encounters a shader that is not already compiled, the driver may have to compile it while the game is running.",{},{"id":605,"data":1301,"type":544,"tunes":1303},{"text":1302},"That work can interrupt the normal frame pipeline. The result can be a short hitch even when average FPS is high.",{},{"id":610,"data":1305,"type":544,"tunes":1307},{"text":1306},"Once the compiled shader has been cached, the same hitch may not happen again until the cache is invalidated or new shader combinations are needed.",{},{"id":615,"data":1309,"type":621,"tunes":1314},{"url":1310,"title":1311,"excerpt":1312,"ctaLabel":1313},"https:\u002F\u002Ffigure.rocks\u002Fblog\u002Fwhy-120-fps-can-still-feel-bad-frame-time-1-lows-and-stutter-explained","Why 120 FPS Can Still Feel Bad: Frame Time, 1% Lows and Stutter Explained","Why average FPS can look healthy while a few long frames make the game feel uneven.","Read the frame-time guide",{},{"id":624,"data":1316,"type":572,"tunes":1318},{"text":1317,"level":47},"The normal shader-compilation path",{},{"id":629,"data":1320,"type":649,"tunes":1338},{"steps":1321,"title":1337,"orientation":648},[1322,1325,1328,1331,1334],{"label":1323,"description":1324},"1. Game ships shader source or intermediate data","The package contains what the driver needs to build GPU-specific programs.",{"label":1326,"description":1327},"2. Player launches the game","The system does not yet have every compiled shader variant in cache.",{"label":1329,"description":1330},"3. Driver compiles shaders locally","Compilation happens at startup, during a dedicated precompilation screen, or just in time during gameplay.",{"label":1332,"description":1333},"4. Compiled shaders are cached","Future runs can reuse the results while the cache remains valid.",{"label":1335,"description":1336},"5. Driver or game changes can invalidate the cache","The system may need to compile again after relevant updates.","Without Advanced Shader Delivery",{},{"id":652,"data":1340,"type":572,"tunes":1342},{"text":1341,"level":47},"What Advanced Shader Delivery changes",{},{"id":657,"data":1344,"type":544,"tunes":1346},{"text":1345},"Advanced Shader Delivery moves the expensive compilation step into a distribution pipeline.",{},{"id":662,"data":1348,"type":544,"tunes":1350},{"text":1349},"The game provides a standardized description of the shader state objects it can need. Microsoft calls that collection a State Object Database, or SODB.",{},{"id":667,"data":1352,"type":544,"tunes":1354},{"text":1353},"The platform combines that game data with a separated shader compiler for the relevant hardware and driver environment to produce a Precompiled Shader Database, or PSDB.",{},{"id":672,"data":1356,"type":544,"tunes":1358},{"text":1357},"The PSDB can then be distributed through the storefront alongside the game.",{},{"id":677,"data":1360,"type":572,"tunes":1362},{"text":1361,"level":47},"The SODB → PSDB pipeline",{},{"id":682,"data":1364,"type":649,"tunes":1385},{"steps":1365,"title":1384,"orientation":648},[1366,1369,1372,1375,1378,1381],{"label":1367,"description":1368},"1. Game creates an SODB","The developer collects the state-object information needed to describe the game's shaders.",{"label":1370,"description":1371},"2. SODB is submitted with the game","The shader-state database becomes part of the distribution workflow.",{"label":1373,"description":1374},"3. Hardware-specific compilation happens ahead of time","The shader compiler produces the correct compiled form for a supported GPU and driver environment.",{"label":1376,"description":1377},"4. A PSDB is produced","The Precompiled Shader Database contains compiled shader data for that target environment.",{"label":1379,"description":1380},"5. Storefront delivers the PSDB","The compiled shader database arrives with or alongside the game download.",{"label":1382,"description":1383},"6. Windows registers the compiled shaders","When the game starts, many shaders can already be present instead of being compiled locally.","How Advanced Shader Delivery works",{},{"id":706,"data":1387,"type":552,"tunes":1390},{"body":1388,"title":1389,"variant":710},"\u003Cstrong>SODB = what the game may need.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Compiler = turns it into hardware-specific GPU programs.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>PSDB = the compiled result.\u003C\u002Fstrong>\u003Cbr>\u003Cstrong>Storefront = delivers it before you play.\u003C\u002Fstrong>","The simplest mental model",{},{"id":713,"data":1392,"type":572,"tunes":1394},{"text":1393,"level":47},"Why this is harder on PC than on console",{},{"id":718,"data":1396,"type":746,"tunes":1416},{"rows":1397,"title":1410,"layout":738,"columns":1411},[1398,1401,1404,1407],{"id":722,"label":1399,"values":1400},"Hardware target",[13,13],{"id":726,"label":1402,"values":1403},"Driver environment",[13,13],{"id":730,"label":1405,"values":1406},"Precompilation",[13,13],{"id":734,"label":1408,"values":1409},"Cache stability",[13,13],"Console vs PC shader preparation",[1412,1414],{"id":741,"label":1413},"Console",{"id":744,"label":1415},"Windows PC",{},{"id":749,"data":1418,"type":572,"tunes":1420},{"text":1419,"level":47},"Why a driver update can matter",{},{"id":754,"data":1422,"type":544,"tunes":1424},{"text":1423},"Compiled shaders are not completely independent of the graphics driver.",{},{"id":759,"data":1426,"type":544,"tunes":1428},{"text":1427},"A driver update can change the compiler or invalidate previously compiled cache data.",{},{"id":764,"data":1430,"type":544,"tunes":1432},{"text":1431},"Microsoft's Advanced Shader Delivery architecture is designed to detect that environment change and refresh the precompiled shader data instead of leaving the player to rebuild everything manually.",{},{"id":769,"data":1434,"type":572,"tunes":1436},{"text":1435,"level":47},"Does this mean shader compilation screens disappear?",{},{"id":774,"data":1438,"type":544,"tunes":1440},{"text":1439},"Potentially many of them can become much shorter or unnecessary, but Advanced Shader Delivery does not guarantee that every shader-related wait disappears.",{},{"id":779,"data":1442,"type":544,"tunes":1444},{"text":1443},"The quality of the SODB matters. If the game fails to describe shader combinations that are later needed, those missing cases may still require local work.",{},{"id":784,"data":1446,"type":544,"tunes":1448},{"text":1447},"Game updates can also introduce new shader states that need new precompiled data.",{},{"id":789,"data":1450,"type":552,"tunes":1453},{"body":1451,"title":1452,"variant":793},"Advanced Shader Delivery can remove a large class of runtime compilation work, but only for shader states that have been captured, compiled and distributed correctly.","Precompiled does not mean complete",{},{"id":796,"data":1455,"type":572,"tunes":1457},{"text":1456,"level":47},"The Shader Availability Boundary",{},{"id":801,"data":1459,"type":746,"tunes":1478},{"rows":1460,"title":1472,"layout":738,"columns":1473},[1461,1464,1466,1469],{"id":805,"label":1462,"values":1463},"Shader state",[13,13],{"id":809,"label":1399,"values":1465},[13,13],{"id":813,"label":1467,"values":1468},"Game version",[13,13],{"id":817,"label":1470,"values":1471},"Distribution",[13,13],"What decides whether the game can avoid local compilation?",[1474,1476],{"id":823,"label":1475},"Covered by ASD",{"id":826,"label":1477},"Outside the delivered database",{},{"id":830,"data":1480,"type":572,"tunes":1482},{"text":1481,"level":47},"What Microsoft's 90% and 95% numbers actually mean",{},{"id":835,"data":1484,"type":544,"tunes":1486},{"text":1485},"Microsoft says Advanced Shader Delivery can reduce shader-related loading time by up to 90% in supported scenarios.",{},{"id":840,"data":1488,"type":544,"tunes":1490},{"text":1489},"For Forza Horizon 6, Microsoft reported a specific internal example where loading dropped from almost 1.5 minutes to about 4 seconds on a Ryzen 7 5800 system with a Radeon RX 7600, which it described as roughly a 95% time saving.",{},{"id":845,"data":1492,"type":544,"tunes":1494},{"text":1493},"Those figures should not be interpreted as a universal guarantee for every game, GPU or loading screen.",{},{"id":850,"data":1496,"type":572,"tunes":1498},{"text":1497,"level":47},"The Shader-Stutter Diagnosis Test",{},{"id":855,"data":1500,"type":649,"tunes":1521},{"steps":1501,"title":1520,"orientation":648},[1502,1505,1508,1511,1514,1517],{"label":1503,"description":1504},"1. Repeat the same scene","If the hitch happens once and disappears on the second run, cache warm-up is a strong clue.",{"label":1506,"description":1507},"2. Compare after clearing or invalidating shader cache","A returning hitch can indicate shader compilation rather than a permanent performance bottleneck.",{"label":1509,"description":1510},"3. Check frame-time spikes","Shader stutter appears as long individual frames, not merely a lower stable average FPS.",{"label":1512,"description":1513},"4. Separate asset streaming from shader compilation","Both can produce traversal stutter, but they are different pipelines.",{"label":1515,"description":1516},"5. Check game and driver updates","A new update can invalidate or expand shader caches.",{"label":1518,"description":1519},"6. Look for ASD status","In supported Xbox PC app titles, the launch window can indicate that precompiled shaders were installed.","How to tell whether a hitch is really shader compilation",{},{"id":879,"data":1523,"type":572,"tunes":1525},{"text":1524,"level":47},"Shader stutter is not the same as asset-streaming stutter",{},{"id":884,"data":1527,"type":544,"tunes":1529},{"text":1528},"Both problems can create a hitch when entering a new area, which makes them easy to confuse.",{},{"id":889,"data":1531,"type":544,"tunes":1533},{"text":1532},"Shader compilation is about creating executable GPU programs. Asset streaming is about moving textures, geometry and other content into usable memory.",{},{"id":894,"data":1535,"type":544,"tunes":1537},{"text":1536},"Advanced Shader Delivery targets the first problem. DirectStorage targets the second pipeline.",{},{"id":899,"data":1539,"type":621,"tunes":1544},{"url":1540,"title":1541,"excerpt":1542,"ctaLabel":1543},"https:\u002F\u002Ffigure.rocks\u002Fblog\u002Fdirectstorage-1-4-does-not-make-your-ssd-decompress-games-what-zstd-and-gpu-decompression-actually-do","DirectStorage 1.4 Does Not Make Your SSD Decompress Games: What Zstd and GPU Decompression Actually Do","A separate look at the asset-loading path: SSD reads, DirectStorage scheduling and CPU\u002FGPU decompression.","Read the DirectStorage guide",{},{"id":907,"data":1546,"type":572,"tunes":1548},{"text":1547,"level":47},"Why the storefront matters",{},{"id":912,"data":1550,"type":544,"tunes":1552},{"text":1551},"Advanced Shader Delivery is not only a Direct3D API feature.",{},{"id":917,"data":1554,"type":544,"tunes":1556},{"text":1555},"The system depends on a distribution service that knows which game version, GPU environment and compiled database belong together.",{},{"id":922,"data":1558,"type":544,"tunes":1560},{"text":1559},"That is why Microsoft's current implementation is tied to Xbox PC app distribution rather than being something an individual player simply switches on globally.",{},{"id":927,"data":1562,"type":572,"tunes":1564},{"text":1563,"level":47},"Why this is not just another shader cache",{},{"id":932,"data":1566,"type":544,"tunes":1568},{"text":1567},"A normal local shader cache is built after your own machine has already paid the compilation cost.",{},{"id":937,"data":1570,"type":544,"tunes":1572},{"text":1571},"Advanced Shader Delivery attempts to deliver that useful compiled state before the cost reaches your machine.",{},{"id":942,"data":1574,"type":746,"tunes":1593},{"rows":1575,"title":1588,"layout":738,"columns":1589},[1576,1579,1582,1585],{"id":946,"label":1577,"values":1578},"When compilation happens",[13,13],{"id":950,"label":1580,"values":1581},"Who pays the initial compile cost",[13,13],{"id":954,"label":1583,"values":1584},"First-run behavior",[13,13],{"id":958,"label":1586,"values":1587},"JIT shader stutter",[13,13],"Local shader cache vs Advanced Shader Delivery",[1590,1592],{"id":964,"label":1591},"Local shader cache",{"id":967,"label":968},{},{"id":971,"data":1595,"type":572,"tunes":1597},{"text":1596,"level":47},"What developers actually have to do",{},{"id":976,"data":1599,"type":544,"tunes":1601},{"text":1600},"The game still has to expose enough information for the platform to build a useful database.",{},{"id":981,"data":1603,"type":544,"tunes":1605},{"text":1604},"Microsoft's current workflow asks developers to collect or programmatically generate an SODB, test it by compiling a PSDB locally, and submit the SODB through the storefront pipeline.",{},{"id":986,"data":1607,"type":544,"tunes":1609},{"text":1608},"Agility SDK 1.619 also introduced application identity and statistics APIs so developers can identify the title consistently and measure how effectively a PSDB is being used.",{},{"id":991,"data":1611,"type":572,"tunes":1613},{"text":1612,"level":47},"What hardware works today?",{},{"id":996,"data":1615,"type":544,"tunes":1617},{"text":1616},"Microsoft's June 2026 update lists Windows 11 version 24H2 or newer, the required Xbox Gaming Services version, AMD Radeon hardware based on RDNA 1 through RDNA 4, and AMD Adrenalin 26.6.1 or newer for the currently documented Xbox PC app path.",{},{"id":1001,"data":1619,"type":544,"tunes":1621},{"text":1620},"Microsoft has also said it is working with Intel and other hardware vendors, and that support will expand to more devices.",{},{"id":1006,"data":1623,"type":544,"tunes":1625},{"text":1624},"That means Advanced Shader Delivery should be treated as an expanding platform feature rather than a universal Windows capability on every GPU today.",{},{"id":1011,"data":1627,"type":572,"tunes":1629},{"text":1628,"level":47},"Why this matters more than another FPS feature",{},{"id":1016,"data":1631,"type":544,"tunes":1633},{"text":1632},"Upscaling and frame generation improve the output of the rendering pipeline after the game is already running.",{},{"id":1021,"data":1635,"type":544,"tunes":1637},{"text":1636},"Advanced Shader Delivery attacks a different quality problem: a frame-time spike caused by preparing GPU programs at the wrong moment.",{},{"id":1026,"data":1639,"type":544,"tunes":1641},{"text":1640},"That is why the benefit can be visible even when average FPS does not change at all.",{},{"id":1031,"data":1643,"type":572,"tunes":1645},{"text":1644,"level":47},"What would change this answer?",{},{"id":1036,"data":1647,"type":544,"tunes":1649},{"text":1648},"The biggest moving boundary is ecosystem support.",{},{"id":1041,"data":1651,"type":544,"tunes":1653},{"text":1652},"Microsoft is still expanding Advanced Shader Delivery across GPUs, storefront workflows and game-engine integrations. Hardware requirements and supported distribution paths can therefore change quickly.",{},{"id":1046,"data":1655,"type":544,"tunes":1657},{"text":1656},"A future implementation integrated broadly across major PC storefronts could make precompiled shader delivery much more transparent to players than it is today.",{},{"id":1051,"data":1659,"type":572,"tunes":1661},{"text":1660,"level":47},"Limitations",{},{"id":1056,"data":1663,"type":544,"tunes":1665},{"text":1664},"This article describes Microsoft's documented Advanced Shader Delivery architecture and current Windows\u002FXbox PC app support as of September 2026.",{},{"id":1061,"data":1667,"type":544,"tunes":1669},{"text":1668},"Microsoft's reported load-time savings are vendor measurements from specific supported scenarios. They should not be treated as universal performance guarantees.",{},{"id":1066,"data":1671,"type":572,"tunes":1673},{"text":1672,"level":47},"Conclusion",{},{"id":1071,"data":1675,"type":544,"tunes":1677},{"text":1676},"Advanced Shader Delivery solves a simple problem with a platform-level answer.",{},{"id":1076,"data":1679,"type":544,"tunes":1681},{"text":1680},"A PC game needs GPU-specific compiled shaders. Building them on the player's machine can cause long first launches and just-in-time stutter. ASD captures what the game needs, compiles it ahead of time for the target environment and delivers the result through the storefront.",{},{"id":1081,"data":1683,"type":544,"tunes":1685},{"text":1684},"The shader still exists. The compilation still happens. The important change is that it happens before the player needs it.",{},{"id":1086,"data":1687,"type":572,"tunes":1689},{"text":1688,"level":47},"FAQ",{},{"id":1091,"data":1691,"type":1119,"tunes":1712},{"items":1692,"title":1711},[1693,1696,1699,1702,1705,1708],{"id":1095,"answer":1694,"question":1695},"A Windows 11 Direct3D 12 technology that precompiles shaders ahead of time and delivers them with the game instead of compiling everything on the player's PC.","What is Advanced Shader Delivery?",{"id":1099,"answer":1697,"question":1698},"A State Object Database describing the shader states a game may need so they can be compiled ahead of delivery.","What is an SODB?",{"id":1103,"answer":1700,"question":1701},"A Precompiled Shader Database containing shader programs already compiled for a target hardware and driver environment.","What is a PSDB?",{"id":1107,"answer":1703,"question":1704},"Not automatically. Missing shader states, unsupported environments or new game content can still require local compilation.","Does ASD eliminate all shader stutter?",{"id":1111,"answer":1706,"question":1707},"No. A local cache is created after your PC compiles shaders. ASD tries to deliver compiled shader data before you run the game.","Is ASD the same as a local shader cache?",{"id":1115,"answer":1709,"question":1710},"Its main purpose is faster shader preparation and fewer compilation-related frame-time spikes, not higher steady-state FPS.","Does Advanced Shader Delivery increase FPS?","Advanced Shader Delivery in plain English",{},{"id":1122,"data":1714,"type":572,"tunes":1716},{"text":1715,"level":47},"Glossary",{},{"id":1127,"data":1718,"type":1158,"tunes":1740},{"title":1719,"entries":1720},"Key shader-delivery terms",[1721,1724,1727,1729,1731,1734,1737],{"term":1722,"anchor":1133,"definition":1723},"Shader","A GPU program used for graphics or compute work such as lighting, materials and post-processing.",{"term":1725,"anchor":1137,"definition":1726},"Shader compilation","Turning shader code into a GPU-specific executable form that the driver and hardware can run.",{"term":1140,"anchor":1141,"definition":1728},"State Object Database containing shader-state information collected from or generated for a game.",{"term":1144,"anchor":1145,"definition":1730},"Precompiled Shader Database containing shader data compiled ahead of time for a target environment.",{"term":1732,"anchor":1149,"definition":1733},"JIT compilation","Just-in-time compilation performed when a shader is first needed during startup or gameplay.",{"term":1735,"anchor":1152,"definition":1736},"Shader Availability Boundary","A Figure Rocks model describing when a shader can be served from delivered precompiled data and when local compilation is still required.",{"term":1738,"anchor":1156,"definition":1739},"Shader-Stutter Diagnosis Test","A Figure Rocks workflow for separating shader-compilation hitches from other causes of frame-time spikes.",{},{"id":1161,"data":1742,"type":572,"tunes":1744},{"text":1743,"level":47},"Primary sources",{},{"id":1166,"data":1746,"type":1173,"tunes":1750},{"link":1168,"meta":1747},{"image":1748,"title":1171,"description":1749},{"url":13},"Official Windows documentation covering the SODB-to-PSDB workflow, benefits and current platform model.",{},{"id":1176,"data":1752,"type":1173,"tunes":1756},{"link":1178,"meta":1753},{"image":1754,"title":1181,"description":1755},{"url":13},"Official architecture explanation covering local shader compilation, SODB, PSDB and storefront distribution.",{},{"id":1185,"data":1758,"type":1173,"tunes":1762},{"link":1187,"meta":1759},{"image":1760,"title":1190,"description":1761},{"url":13},"Official 2026 developer update covering SODB integration, application identity, statistics and Xbox Partner Center workflow.",{},{"id":1194,"data":1764,"type":1173,"tunes":1768},{"link":1196,"meta":1765},{"image":1766,"title":1199,"description":1767},{"url":13},"Official 2026 availability update covering Windows 11, AMD RDNA support, Xbox PC app distribution and Forza Horizon 6 measurements.",{},"2.31.6","Shader stutter happens when a PC game has to compile GPU programs at the wrong moment. Microsoft Advanced Shader Delivery moves much of that work off the player’s PC by preparing hardware-specific shaders ahead of time and delivering them with the game.",{"lang":7,"title":534,"content":536,"contentJson":1772,"excerpt":1203},{"time":538,"blocks":1773,"version":1202},[1774,1777,1780,1783,1786,1789,1792,1795,1798,1801,1804,1807,1810,1813,1816,1819,1828,1831,1834,1837,1840,1843,1846,1856,1859,1862,1877,1880,1883,1886,1889,1892,1895,1898,1901,1904,1907,1922,1925,1928,1931,1934,1937,1947,1950,1953,1956,1959,1962,1965,1968,1971,1974,1977,1980,1983,1998,2001,2004,2007,2010,2013,2016,2019,2022,2025,2028,2031,2034,2037,2040,2043,2046,2049,2052,2055,2058,2061,2064,2067,2070,2080,2083,2094,2097,2102,2107,2112],{"id":541,"data":1775,"type":544,"tunes":1776},{"text":543},{},{"id":547,"data":1778,"type":552,"tunes":1779},{"body":549,"title":550,"variant":551},{},{"id":555,"data":1781,"type":552,"tunes":1782},{"body":557,"title":558,"variant":559},{},{"id":562,"data":1784,"type":566,"tunes":1785},{"title":564,"maxLevel":565,"minLevel":47},{},{"id":569,"data":1787,"type":572,"tunes":1788},{"text":571,"level":47},{},{"id":575,"data":1790,"type":544,"tunes":1791},{"text":577},{},{"id":580,"data":1793,"type":544,"tunes":1794},{"text":582},{},{"id":585,"data":1796,"type":544,"tunes":1797},{"text":587},{},{"id":590,"data":1799,"type":544,"tunes":1800},{"text":592},{},{"id":595,"data":1802,"type":572,"tunes":1803},{"text":597,"level":47},{},{"id":600,"data":1805,"type":544,"tunes":1806},{"text":602},{},{"id":605,"data":1808,"type":544,"tunes":1809},{"text":607},{},{"id":610,"data":1811,"type":544,"tunes":1812},{"text":612},{},{"id":615,"data":1814,"type":621,"tunes":1815},{"url":617,"title":618,"excerpt":619,"ctaLabel":620},{},{"id":624,"data":1817,"type":572,"tunes":1818},{"text":626,"level":47},{},{"id":629,"data":1820,"type":649,"tunes":1827},{"steps":1821,"title":647,"orientation":648},[1822,1823,1824,1825,1826],{"label":633,"description":634},{"label":636,"description":637},{"label":639,"description":640},{"label":642,"description":643},{"label":645,"description":646},{},{"id":652,"data":1829,"type":572,"tunes":1830},{"text":654,"level":47},{},{"id":657,"data":1832,"type":544,"tunes":1833},{"text":659},{},{"id":662,"data":1835,"type":544,"tunes":1836},{"text":664},{},{"id":667,"data":1838,"type":544,"tunes":1839},{"text":669},{},{"id":672,"data":1841,"type":544,"tunes":1842},{"text":674},{},{"id":677,"data":1844,"type":572,"tunes":1845},{"text":679,"level":47},{},{"id":682,"data":1847,"type":649,"tunes":1855},{"steps":1848,"title":703,"orientation":648},[1849,1850,1851,1852,1853,1854],{"label":686,"description":687},{"label":689,"description":690},{"label":692,"description":693},{"label":695,"description":696},{"label":698,"description":699},{"label":701,"description":702},{},{"id":706,"data":1857,"type":552,"tunes":1858},{"body":708,"title":709,"variant":710},{},{"id":713,"data":1860,"type":572,"tunes":1861},{"text":715,"level":47},{},{"id":718,"data":1863,"type":746,"tunes":1876},{"rows":1864,"title":737,"layout":738,"columns":1873},[1865,1867,1869,1871],{"id":722,"label":723,"values":1866},[13,13],{"id":726,"label":727,"values":1868},[13,13],{"id":730,"label":731,"values":1870},[13,13],{"id":734,"label":735,"values":1872},[13,13],[1874,1875],{"id":741,"label":742},{"id":744,"label":745},{},{"id":749,"data":1878,"type":572,"tunes":1879},{"text":751,"level":47},{},{"id":754,"data":1881,"type":544,"tunes":1882},{"text":756},{},{"id":759,"data":1884,"type":544,"tunes":1885},{"text":761},{},{"id":764,"data":1887,"type":544,"tunes":1888},{"text":766},{},{"id":769,"data":1890,"type":572,"tunes":1891},{"text":771,"level":47},{},{"id":774,"data":1893,"type":544,"tunes":1894},{"text":776},{},{"id":779,"data":1896,"type":544,"tunes":1897},{"text":781},{},{"id":784,"data":1899,"type":544,"tunes":1900},{"text":786},{},{"id":789,"data":1902,"type":552,"tunes":1903},{"body":791,"title":792,"variant":793},{},{"id":796,"data":1905,"type":572,"tunes":1906},{"text":798,"level":47},{},{"id":801,"data":1908,"type":746,"tunes":1921},{"rows":1909,"title":820,"layout":738,"columns":1918},[1910,1912,1914,1916],{"id":805,"label":806,"values":1911},[13,13],{"id":809,"label":810,"values":1913},[13,13],{"id":813,"label":814,"values":1915},[13,13],{"id":817,"label":818,"values":1917},[13,13],[1919,1920],{"id":823,"label":824},{"id":826,"label":827},{},{"id":830,"data":1923,"type":572,"tunes":1924},{"text":832,"level":47},{},{"id":835,"data":1926,"type":544,"tunes":1927},{"text":837},{},{"id":840,"data":1929,"type":544,"tunes":1930},{"text":842},{},{"id":845,"data":1932,"type":544,"tunes":1933},{"text":847},{},{"id":850,"data":1935,"type":572,"tunes":1936},{"text":852,"level":47},{},{"id":855,"data":1938,"type":649,"tunes":1946},{"steps":1939,"title":876,"orientation":648},[1940,1941,1942,1943,1944,1945],{"label":859,"description":860},{"label":862,"description":863},{"label":865,"description":866},{"label":868,"description":869},{"label":871,"description":872},{"label":874,"description":875},{},{"id":879,"data":1948,"type":572,"tunes":1949},{"text":881,"level":47},{},{"id":884,"data":1951,"type":544,"tunes":1952},{"text":886},{},{"id":889,"data":1954,"type":544,"tunes":1955},{"text":891},{},{"id":894,"data":1957,"type":544,"tunes":1958},{"text":896},{},{"id":899,"data":1960,"type":621,"tunes":1961},{"url":901,"title":902,"excerpt":903,"ctaLabel":904},{},{"id":907,"data":1963,"type":572,"tunes":1964},{"text":909,"level":47},{},{"id":912,"data":1966,"type":544,"tunes":1967},{"text":914},{},{"id":917,"data":1969,"type":544,"tunes":1970},{"text":919},{},{"id":922,"data":1972,"type":544,"tunes":1973},{"text":924},{},{"id":927,"data":1975,"type":572,"tunes":1976},{"text":929,"level":47},{},{"id":932,"data":1978,"type":544,"tunes":1979},{"text":934},{},{"id":937,"data":1981,"type":544,"tunes":1982},{"text":939},{},{"id":942,"data":1984,"type":746,"tunes":1997},{"rows":1985,"title":961,"layout":738,"columns":1994},[1986,1988,1990,1992],{"id":946,"label":947,"values":1987},[13,13],{"id":950,"label":951,"values":1989},[13,13],{"id":954,"label":955,"values":1991},[13,13],{"id":958,"label":959,"values":1993},[13,13],[1995,1996],{"id":964,"label":965},{"id":967,"label":968},{},{"id":971,"data":1999,"type":572,"tunes":2000},{"text":973,"level":47},{},{"id":976,"data":2002,"type":544,"tunes":2003},{"text":978},{},{"id":981,"data":2005,"type":544,"tunes":2006},{"text":983},{},{"id":986,"data":2008,"type":544,"tunes":2009},{"text":988},{},{"id":991,"data":2011,"type":572,"tunes":2012},{"text":993,"level":47},{},{"id":996,"data":2014,"type":544,"tunes":2015},{"text":998},{},{"id":1001,"data":2017,"type":544,"tunes":2018},{"text":1003},{},{"id":1006,"data":2020,"type":544,"tunes":2021},{"text":1008},{},{"id":1011,"data":2023,"type":572,"tunes":2024},{"text":1013,"level":47},{},{"id":1016,"data":2026,"type":544,"tunes":2027},{"text":1018},{},{"id":1021,"data":2029,"type":544,"tunes":2030},{"text":1023},{},{"id":1026,"data":2032,"type":544,"tunes":2033},{"text":1028},{},{"id":1031,"data":2035,"type":572,"tunes":2036},{"text":1033,"level":47},{},{"id":1036,"data":2038,"type":544,"tunes":2039},{"text":1038},{},{"id":1041,"data":2041,"type":544,"tunes":2042},{"text":1043},{},{"id":1046,"data":2044,"type":544,"tunes":2045},{"text":1048},{},{"id":1051,"data":2047,"type":572,"tunes":2048},{"text":1053,"level":47},{},{"id":1056,"data":2050,"type":544,"tunes":2051},{"text":1058},{},{"id":1061,"data":2053,"type":544,"tunes":2054},{"text":1063},{},{"id":1066,"data":2056,"type":572,"tunes":2057},{"text":1068,"level":47},{},{"id":1071,"data":2059,"type":544,"tunes":2060},{"text":1073},{},{"id":1076,"data":2062,"type":544,"tunes":2063},{"text":1078},{},{"id":1081,"data":2065,"type":544,"tunes":2066},{"text":1083},{},{"id":1086,"data":2068,"type":572,"tunes":2069},{"text":1088,"level":47},{},{"id":1091,"data":2071,"type":1119,"tunes":2079},{"items":2072,"title":1118},[2073,2074,2075,2076,2077,2078],{"id":1095,"answer":1096,"question":1097},{"id":1099,"answer":1100,"question":1101},{"id":1103,"answer":1104,"question":1105},{"id":1107,"answer":1108,"question":1109},{"id":1111,"answer":1112,"question":1113},{"id":1115,"answer":1116,"question":1117},{},{"id":1122,"data":2081,"type":572,"tunes":2082},{"text":1124,"level":47},{},{"id":1127,"data":2084,"type":1158,"tunes":2093},{"title":1129,"entries":2085},[2086,2087,2088,2089,2090,2091,2092],{"term":1132,"anchor":1133,"definition":1134},{"term":1136,"anchor":1137,"definition":1138},{"term":1140,"anchor":1141,"definition":1142},{"term":1144,"anchor":1145,"definition":1146},{"term":1148,"anchor":1149,"definition":1150},{"term":798,"anchor":1152,"definition":1153},{"term":1155,"anchor":1156,"definition":1157},{},{"id":1161,"data":2095,"type":572,"tunes":2096},{"text":1163,"level":47},{},{"id":1166,"data":2098,"type":1173,"tunes":2101},{"link":1168,"meta":2099},{"image":2100,"title":1171,"description":1172},{"url":13},{},{"id":1176,"data":2103,"type":1173,"tunes":2106},{"link":1178,"meta":2104},{"image":2105,"title":1181,"description":1182},{"url":13},{},{"id":1185,"data":2108,"type":1173,"tunes":2111},{"link":1187,"meta":2109},{"image":2110,"title":1190,"description":1191},{"url":13},{},{"id":1194,"data":2113,"type":1173,"tunes":2116},{"link":1196,"meta":2114},{"image":2115,"title":1199,"description":1200},{"url":13},{},"Post erfolgreich abgerufen",{"items":2119,"source":2197,"manualIds":2198,"manualMatchedIds":2199},[2120,2126,2133,2140,2146,2153,2159,2166,2172,2178,2184,2191],{"id":2121,"slug":2122,"title":2123,"excerpt":2124,"featuredImage":14,"publishedAt":2125},"127","motion-clarity-why-blur-happens-and-the-fixes-that-actually-work","Четкость движения: почему возникает размытие и способы решения, которые действительно работают","Размытие в движении — это не просто настройка, это сочетание тайминга и послесвечения. Изучите практический порядок: правильный режим, правильная частота обновления, а затем те немногие способы улучшения четкости, которые действительно работают.","2026-02-20T11:00:00.000Z",{"id":2127,"slug":2128,"title":2129,"excerpt":2130,"featuredImage":2131,"publishedAt":2132},"444","pubg-ally-shows-why-ai-teammates-need-two-brains-fast-reflexes-and-slow-reasoning","PUBG Ally показывает, почему ИИ-напарникам нужны два мозга: быстрые рефлексы и медленное мышление","Языковая модель может понимать тактику и намерения игрока, но она не должна напрямую управлять каждым движением и боевой реакцией. PUBG Ally демонстрирует более практичную архитектуру: быстрое управление на основе дерева поведения для рефлекторных действий в сочетании с небольшой языковой моделью для планирования, координации и естественного общения.","\u002Fuploads\u002F2026\u002F09\u002Fpubg-ally-shows-why-ai-teammates-need-two-brains-fast-reflexes-and-slow-reasoning-1790376777825-bi2zzb.webp","2026-09-25T14:51:00.000Z",{"id":2134,"slug":2135,"title":2136,"excerpt":2137,"featuredImage":2138,"publishedAt":2139},"445","amd-fsr-redstone-is-not-just-fsr-4-upscaling-frame-generation-ray-regeneration-and-radiance-caching-explained","AMD FSR Redstone — это не просто FSR 4: объяснение апскейлинга, генерации кадров, регенерации лучей и кэширования излучения","Название FSR от AMD изменилось, потому что FSR больше не является одной функцией. Redstone теперь представляет собой набор технологий нейронного рендеринга с отдельными технологиями для масштабирования, генерации кадров, реконструкции трассировки лучей и обученного глобального освещения.","\u002Fuploads\u002F2026\u002F09\u002Famd-fsr-redstone-is-not-just-fsr-4-upscaling-frame-generation-ray-regeneration-and-radiance-caching-explained-1790377725715-arwmri.webp","2026-09-25T15:07:00.000Z",{"id":2141,"slug":2142,"title":2143,"excerpt":2144,"featuredImage":14,"publishedAt":2145},"220","shader-cache-reality-what-it-fixes-what-it-doesnt-and-why-stutter-returns","Реальность кэша шейдеров: что он исправляет, что нет и почему статтеры возвращаются","Кэш шейдеров может уменьшить статтеры при повторной компиляции, но он не исправит скачки нагрузки на ЦП или заминки при подгрузке. Узнайте, что он делает на самом деле и как проводить тестирование правильно.","2026-02-20T21:00:00.000Z",{"id":2147,"slug":2148,"title":2149,"excerpt":2150,"featuredImage":2151,"publishedAt":2152},"446","directx-is-becoming-an-ml-platform-what-linear-algebra-and-neural-shaders-mean-for-future-games","DirectX становится ML-платформой: что линейная алгебра и нейронные шейдеры означают для будущих игр","DirectX выходит за рамки традиционных графических шейдеров. Microsoft добавляет аппаратно-ускоренную линейную алгебру непосредственно в HLSL и отдельный путь для более крупных ML-моделей, закладывая основу для нейронных текстур, обучаемых материалов, нейронного освещения и других методов рендеринга на основе ИИ.","\u002Fuploads\u002F2026\u002F09\u002Fdirectx-is-becoming-an-ml-platform-what-linear-algebra-and-neural-shaders-mean-for-future-games-1790378019857-utigyk.webp","2026-09-25T15:12:00.000Z",{"id":2154,"slug":2155,"title":2156,"excerpt":2157,"featuredImage":14,"publishedAt":2158},"176","shader-cache-basics-reduce-first-run-hitches-without-fake-tweaks","Основы кэша шейдеров: уменьшение статтеров при первом запуске без фейковых твиков","Многие статтеры при первом запуске — это компиляция шейдеров. Узнайте, что такое кэш шейдеров, как определить статтеры шейдеров и что помогает без настроек-плацебо.","2026-02-20T15:00:00.000Z",{"id":2160,"slug":2161,"title":2162,"excerpt":2163,"featuredImage":2164,"publishedAt":2165},"439","why-120-fps-can-still-feel-bad-frame-time-1-lows-and-stutter-explained","Почему 120 FPS всё ещё могут ощущаться плохо: время кадра, 1% низких и микрофризы — объяснение","Игра может сообщать о 120, 144 или даже 200 FPS и при этом ощущаться неровной. Это руководство объясняет, почему средний FPS может скрывать плохую доставку кадров, как время кадра и 1% минимумов выявляют рывки и как диагностировать, вызывает ли проблему CPU, GPU или другая часть конвейера.","\u002Fuploads\u002F2026\u002F09\u002Fwhy-120-fps-can-still-feel-bad-frame-time-1-lows-and-stutter-explained-1790374675922-u9tp75.webp","2026-09-25T18:17:00.000Z",{"id":2167,"slug":2168,"title":2169,"excerpt":2170,"featuredImage":14,"publishedAt":2171},"180","router-checklist-v2-the-12-settings-that-prevent-lag-spikes","Чек-лист для роутера v2: 12 настроек, предотвращающих скачки задержки","Большинство скачков задержки возникают из-за нагрузки и нестабильности, а не из-за ‘плохого пинга’. Используйте этот чек-лист для роутера, чтобы стабилизировать задержку под нагрузкой перед покупкой нового оборудования.","2026-02-20T16:00:00.000Z",{"id":2173,"slug":2174,"title":2175,"excerpt":2176,"featuredImage":14,"publishedAt":2177},"237","shader-stutter-why-first-runs-hitch-and-how-to-reduce-it","Статтеры шейдеров: почему возникают заминки при первом запуске и как их уменьшить","Статтеры шейдеров возникают, когда новые эффекты компилируются в реальном времени. Узнайте, как быстро их распознать, и практические способы уменьшить задержки без «плацебо-твиков».","2026-02-20T23:40:00.000Z",{"id":2179,"slug":2180,"title":2181,"excerpt":2182,"featuredImage":14,"publishedAt":2183},"246","router-checklist-for-gaming-the-settings-that-actually-matter","Чек-лист по настройке роутера для игр: настройки, которые действительно важны","Большинство настроек роутера не помогают. А эти помогают: управление очередями под нагрузкой, стабильная работа Wi-Fi и отказ от функций, добавляющих задержку или нестабильность.","2026-02-21T01:30:00.000Z",{"id":2185,"slug":2186,"title":2187,"excerpt":2188,"featuredImage":2189,"publishedAt":2190},"441","vram-usage-is-not-vram-requirement-why-a-full-memory-meter-does-not-tell-the-whole-story","Использование VRAM — это не требование к VRAM: почему заполненный индикатор памяти не рассказывает всей истории","Видя 7,8 ГБ использованной памяти на 8-гигабайтной видеокарте, можно подумать, что игра исчерпала видеопамять. Но всё не так просто. Это руководство объясняет объём видеопамяти, бюджеты резидентности, рабочие наборы, разделяемую память и то, как определить, действительно ли нехватка памяти вызывает подтормаживания.","\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":2192,"slug":2193,"title":2194,"excerpt":2195,"featuredImage":14,"publishedAt":2196},"241","overdrive-tuning-the-clean-way-to-reduce-blur-without-ghosting","Настройка Overdrive: чистый способ уменьшить размытие без гостинга","Овердрайв может улучшить четкость или добавить некрасивые ореолы. Используйте этот простой метод, чтобы выбрать чистую среднюю настройку, которая уменьшает размытие без артефактов гостинга.","2026-02-21T03:30:00.000Z","fallback",[],[]]