AMD FSR Redstone posouvá balík FidelityFX Super Resolution pro upscaling a generování snímků do éry strojového učení. Vylepšený upscaling, frame generation, Ray Regeneration i Radiance Caching využívá ML na Radeonech RX 9000 s architekturou RDNA 4. Podíváme se, co FSR 4 Redstone přidává oproti předchozím generacím FSR, jak funguje, jaká má omezení a jak se bude mít s podporou ve hrách na PC.
AMD FSR „Redstone“ je další významnou evolucí technologie AMD FidelityFX Super Resolution. Ta vznikla v roce 2021 jako reakce na DLSS od Nvidie. V první generaci začínala jako kvalitnější upscaling jednoho snímku z nižšího rozlišení na nativní rozlišení monitoru a postupně docházelo k vylepšování kvality obrazu. V současnosti AMD přichází s vylepšením FSR čtvrté generace. V rychlosti si zrekapitulujeme, co která generace nabízela:
FSR 1 – kvalitnější upscaling jednoho snímku
První generace FSR funguje jako upscaler čistě na jediném snímku. Hra nejdřív vykreslí snímek v nižším rozlišení a FSR z něj pak pomocí vlastního algoritmu (EASU, Edge-Adaptive Spatial Upsampling) dopočítá obraz ve vyšším rozlišení. Snaží se zachovat hrany a jemné detaily a potlačit aliasing. Následně přes něj pustí ještě doostření (RCAS). FSR1 ještě nepracuje s daty z předchozích snímků), jde o „klasický“ upscaler, který běží jako postprocessing shader a nevyžaduje žádný speciální hardware.
FSR 2 – přidává se časová složka
FSR 2 už nepracuje jen s jedním snímkem, ale využívá i data z předchozích, což se označuje jako temporal upscaling (časová rekonstrukce obrazu). Hra vykreslí scénu v nižším rozlišení, ale FSR 2 kromě aktuálního snímku pracuje i s jeho historií, která zahrnuje například předchozí snímky, pohybové vektory a hloubkovou mapu. Z jejich kombince pak rekonstruuje obraz ve vyšším rozlišení a zároveň zastoupí vyhlazování hran (TAA). Díky tomu zvládne rekonstrukci obrazu s jemnějšími detaily než první FSR a sníží poblikávání prvků v obrazu mezi jednotlivými snímky (například u drátů, plotů nebo textur). Trpí ale na artefakty v místech, kde nemá dostatek vzorků z předchozích snímků. Nejčastěji tomu dochází v části obrazu, která byla v předchozích snímcích něčím překrytá, například na hranách pohybujících se objektů, kde se objevuje zrnění nebo typičtí „duchové“ a šmouhy.
FSR 3 – vyšší kvalita a generování snímků, stále jen přes shadery
V rámci třetí generace FSR AMD dále vylepšilo temporální upscaling a přidalo možnost generování snímků (frame generation), při němž grafika mezi renderované snímky dopočítává další, uměle vytvořené. S FSR 3 přibyla i podpora Native AA. Při něm hra běží v nativním rozlišení s plnými detaily a temporální algoritmus z FSR se využívá pro dosažení vyšší kvality detailů a vyhlazování hran.
Stále jde o softwarové řešení, které běží přes výpočetní shadery grafického čipu a není vázané na specializovaný hardware. FSR 3 je ale méně náchylné na blikání jemných detailů, lépe se zachovávají drobné struktury a snižuje se výskyt artefaktů při rychlém pohybu. Zlepšení se týkají i práce s pohybovými vektory a hloubkovou mapou scény.
Cílem generování snímků je hlavně zlepšit plynulost obrazu na monitorech s vysokou obnovovací frekvencí v okamžiku, kdy je snímková frekvence dostatečná pro komfortní hraní. Generováním snímků totiž nelze z nehratelných snímkových frekvencí získat hratelné.
Když jsou výchozí snímkové frekvence nízké, neuděláte nic s dlouhou odezvou hry, která se při vkládání snímků se ještě něco zhorší, protože je při zobrazení mezisnímku nutné odložit zobrazení posledního vyrenderovaného snímku. Při nízké výchozí frekvenci jsou i větší rozdíly mezi renderovanými snímky, takže kvalita vkládaných snímků výrazně klesá a rušivé artefakty jsou viditelnější.
FSR 4
S uvedením nové generace Radeonů RX 9000 AMD přineslo FSR 4, které už využívá umělou inteligenci pro vylepšení nedostatků, které mají předchozí generace FSR, především artefaktů způsobených nedostatečným počtem vzorků při renderingu. Využívá stejné funkce API jako FSR 3.1, takže lze pomocí ovladačů vynutit FSR4 upgrade a vylepšený upscaling může fungovat i ve hrách, které nemají FSR 4 implementované nativně, ale podporují FSR 3.1. Průběžně aktualizovaný seznam titulů s podporou FSR 4 najdete na stránkách AMD.
Cenou za využití modelů pro strojové učení je omezení na novou generaci Radeonů RX 9000, které využívá vylepšenou akceleraci AI u karet s architekturou RDNA 4, zatímco FSR 3 fungovalo v zásadě na široké paletě GPU jen přes shadery.
FSR Redstone
AMD pod názvem FSR „Redstone“ spojuje několik technologií, které používají strojové učení ke zlepšení výkonu i obrazové kvality ve hrách. Upscaling FSR 4 využívající strojové učení (ML) doplňují další technologie pracující s využitím AI – FSR Frame Generation, FSR Ray Regeneration a FSR Radiance Caching.
Cílem celé sady je současně dosáhnout vyšších snímkových frekvencí a kvalitnějšího obrazu s ray tracingem. Ve hrách bude díky tomu možné využívat vyšší nastavení herních detailů a s tím dosáhnout i celkově vyšší kvality obrazu při snímkových frekvencích, kterých by nebylo možné bez FSR dosáhnout.
Pouze na Radeonech RX 9000
V září se spekulovalo o tom, že FSR Redstone přinese podporu FSR 4 i pro starší generace Radeonů (a případně i karty konkurence). AMD totiž omylem uvolnilo kód, v němž byly indicie, že se podpora může rozšířit i na další karty, a existují i hacky, s nimiž ji lze do hry injektovat a do jisté míry zprovoznit.
V materiálech, které máme k dispozici, jsou ale i v balíku FSR Redstone v souvislosti s technologiemi využívajícími AI zmíněné stále pouze Radeony poslední generace s architekturou RX 9000 a o podpoře FSR 4 na RX 7000 v nich není zmínka. Totéž říká i tabulka od AMD:
| Funkce AMD FSR | AMD RDNA 1, 2, 3 a 3.5 | AMD RDNA 4 |
|---|---|---|
| AMD FSR Upscaling (ML) | ✓ | |
| AMD FSR Upscaling (algoritmické) | ✓ | ✓ |
| AMD FSR Frame Generation (ML) | ✓ | |
| AMD FSR Frame Generation (algoritmické) | ✓ | ✓ |
| AMD FSR Ray Regeneration (ML) | ✓ | |
| AMD FSR Radiance Caching (ML) | ✓ |
Nejprve jen stručně ke každé z technologií, dále si to rozebereme detailněji:
AMD FSR Upscaling
FSR Upscaling využívá neuronovou síť k tomu, aby z relativně nízkého renderovaného rozlišení dopočítala obraz ve vyšším rozlišení. Hra tak interně běží v menším rozlišení (kvůli výkonu), ale výstup na monitoru vypadá ostřeji a detailněji, než by odpovídalo samotnému zdrojovému rozlišení. Čtvrtá generace k tomu přidala vyšší kvalitu rekonstrukce obrazu díky využití strojového učení.
Z materiálů AMD není zřejmé, jestli samotný FSR Upscaling doznal s balíkem Redstone nějakého vylepšení, kvalitu obrazu srovnává AMD s FSR 3.1.
AMD FSR Frame Generation
FSR Frame Generation přidává další snímky mezi ty, které hra skutečně vyrenderuje. Na Radeonech 9000 neuronová síť, vytrénovaná na náročných scénách moderních her, na základě dvou po sobě jdoucích snímků a doplňkových dat (např. pohybových vektorů) vytvoří mezisnímek. Prakticky to znamená vyšší výslednou snímkovou frekvenci a plynulejší pohyb bez toho, aby hra musela všechny zobrazené snímky renderovat. FSR 4 Redstone vylepšuje kvalitu rekonstrukce obrazu díky strojovému učení.
AMD FSR Ray Regeneration
FSR Ray Regeneration se zaměřuje na ray tracing. Funguje jako neuronová denoising vrstva pro ray a path tracing: vezme obraz vyrenderovaný s nízkým počtem vzorků na pixel (tedy s typickým „šumem“ ray tracingu) a šum odstraní tak, aby výsledný snímek vypadal čistěji. Takto upravený obraz se potom hodí pro další kroky jako upscaling nebo interpolace snímků.
FSR Ray Regeneration regeneration je implementovaný v Call of Duty: Black Ops 7 a testům jeho vlivu na kvalitu ray tracingu a výkon jsme se už detailně věnovali v samostatném článku.
AMD FSR Radiance Caching
FSR Radiance Caching má snížit výpočetní nároky ray tracingu tím, že chytřeji pracuje s informacemi o světle ve scéně. Místo toho, aby hra přepočítávala veškeré osvětlení od nuly, ukládá a znovu využívá předpočítané údaje, případně je doplňuje odhadem přes neuronovou síť. Výsledkem má být lepší poměr mezi obrazovou kvalitou a výkonem u scén s komplexním nasvícením.
⠀





















