Nvidia uvádí DLSS 3.5: Ray Reconstruction má zlepšit kvalitu ray tracingu, i pro starší GPU

23. 8. 2023

Sdílet

Nvidia Ray Reconstruction - DLSS 3.5 denoiser Autor: Nvidia
Nvidia Ray Reconstruction - DLSS 3.5 denoiser
Je tu nová verze AI upscalingu od Nvidie. Vzdor názvu DLSS 3.5 nesouvisí s DLSS 3 a bude fungovat i na grafikách generace Turing a Ampere, nejen na GeForce RTX 4000.

Nvidia nyní oznámila nové pokračování technologie AI upscalingu DLSS, navazující na třetí generaci či DLSS 3 z minulého roku. Nová verze DLSS 3.5 je ovšem názvem poněkud matoucí, protože jde do jisté míry spíš o pokračování DLSS 2.x – toto zlepšení totiž nebude závislé na DLSS 3 (také označované termínem Frame Generation), a bude tak funkční i na starších grafikách generací GeForce RTX 2000 a RTX 3000.

Nové DLSS 3.5 obnáší jednu ústřední novinku, kterou Nvidia pojmenovala Ray Reconstruction (uvidíme, možná se v budoucnu bude používat spíše toto označení než DLSS 3.5). Cílem je vylepšení obrazové kvality ray tracingu a spočívá to v nahrazení denoisingu, který se při ray tracingu používá.

Denoising při ray tracingu

Jak asi víte, pro vykreslování scény ray tracingem je potřeba analyzovat velké množství paprsků světla dopadajících a odrážejících se od objektů. Problém ve hrách (ale v podstatě i ve statických scénách počítaných mnohem delší dobu než snímek hry) je, že není dost výkonu k vypočítání tolika paprsků, kolik by bylo třeba.

Proto se jich analyzuje jen relativně malé množství. Můžete si to představit tak, že místo výsledné scény máte snímek ne se souvislým obrazem, ale jen s individuálními body tvořícími jakýsi zašuměný obraz s mezerami mezi sebou.

Nvidia DLSS 3.5

Schéma tradičního raytracingového vykreslování

Autor: Nvidia

Herní implementace ray tracingu v DXR (DirectX Ray Tracing) od počátku používá denoisery (filtry odstraňující vizuální šum), aby tento obraz vyhladily, vyplnily a potlačily ony diskontinuity a umožnily jeho použití ve hře. Tyto denoisery jsou různé a mohou používat techniky temporální i spatiální (tedy vyhlazující jen na úrovni jednoho snímku).

Nvidia DLSS 3.5

Fungování denoiserů při ray tracingu

Autor: Nvidia

Popravdě řečeno jsem z předchozích prezentací měl dojem, že Nvidia již tyto denoisery pro ray tracing prováděla neuronovou sítí neboli AI, ale nyní firma uvádí, že tyto denoisery jsou ve hrách stále řešeny tradičními „ručně navrženými“ algoritmy, někdy více zkombinovanými algoritmy.

Ray Reconstruction pomocí AI

A technologie DLSS 3.5 neboli Ray Reconstruction dělá jednoduchou věc. Protože tato úloha je jednou z těch, pro kterou se dobře dá uplatnit „black box“ povaha umělých inteligencí, udělala Nvidia přesně to a DLSS 3.5 přináší speciální neuronovou síť, která se použije na tomto místě vykreslování hry a nahrazuje práci obvyklých denoiserů. Neuronová síť se pro tento účel trénuje pomocí korpusu čistých a zašuměných snímků, podobně jako se trénuje na originálních a zmenšených snímcích pro upscaling. Po natrénování by měla podle Nvidie dosahovat lepších výsledků než tradiční denoisery.

Tento AI odšumovací filtr je ve fungování blízký DLSS 2.x – provádí s obrazovými daty raytracingového osvětlení zároveň odšumění, ale také v podstatě jejich upscaling. Jako pomůcku používá různá data z enginu hry, kterými vylepšuje vstupní vykreslené snímky, ovšem v tomto případě ne finální snímky scény, ale obrazová data raytracingového osvětlení. Podle prezentace Nvidie je filtr temporální a používá pohybové vektory – dává si dohromady několik po sobě jdoucích minulých snímků k temporálnímu filtrování a tímto může také obnovit určitý detail, který by jinak v nízkém rozlišení používaném při raytracingových efektech zanikal.

Nvidia DLSS 3.5

Schéma raytracingové pipeline s Nvidia DLSS 3.5 (v diagramu pak následuje také frame generation alias DLSS 3, což ale není součást procesu DLSS 3.5)

Autor: Nvidia

Integrace s DLSS 2.x

Důležitý detail je, že tato odšumovací AI je, zdá se, jeden celek s upscalovací AI používanou pro DLSS 2.x, mělo by jít o jeden model, který provádí obě tyto funkce. To by mělo být nápomocno v tom, že AI má více informací ke své práci. Zatímco při odděleném fungování by se stávalo, že DLSS 2.x nakonec odvede horší práci s upscalingem osvětlení proto, že před ním denoiser vymazal určité detaily i informaci ze vstupu, takto integrovaná AI bude moci podobnou informaci pořád nějak aplikovat jako vstup pro své rozhodování.

Nvidia DLSS 3.5

Nvidia DLSS 3.5

Autor: Nvidia

Nvidia tvrdí, že použití této AI v rámci DLSS 3.5 zvýší obrazovou kvalitu, protože denoiser a jeho temporální funkce bude schopná zachovávat některé detaily navíc a zároveň předcházet některým artefaktům (temporálním duchům, nebo rozmazání detailů), které současné denoisery způsobují nebo nejsou schopné jim předejít.

Je ale třeba jako u ostatních těchto AI technik připomenout, že se stále pracuje na principu aproximace a AI pořád do určité míry vaří „z vody“ (z omezené a chybějící obrazové informace), takže nemůže zázračně dodat dokonalý výsledek. Cílem je stejně jako u ostatních verzí DLSS, aby výsledek byl v rámci daných výkonnostních omezení lepší. Ale stále při tom mohou nastat (nebo lépe řečeno budou nastávat) různé artefakty a nedokonalosti. Ostatně všechny verze DLSS procházely a dál procházejí vývojem, který je právě o postupném vylepšování a mírnění různých neduhů a artefaktů.

DLSS 3.5 neimplikuje DLSS 3

DLSS 3.5 tak, jak jsme ho tu nyní popisovali, má podle Nvidie fungovat na grafikách GeForce s tensor jádry, tedy na GeForce RTX 2000, 3000 i 4000. Nepotřebuje tedy nové specializované jednotky z GPU generace Ada Lovelace, na rozdíl od DLSS 3. Nicméně pozor na to, že „DLSS 3.5“ v tomto smyslu nebude náhrada za DLSS 3, ač k tomu pojmenování zavádí.

Nvidia DLSS 3.5

Nvidia DLSS 3.5

Autor: Nvidia

Technologie vkládání vygenerovaných umělých mezisnímků („Frame Generation“), která doteď byla označovaná DLSS 3, bude pořád vyžadovat speciální jednotky grafik GeForce RTX 4000. Oznámení DLSS 3.5 neznamená, že teď už dostanete Frame Generation s grafikami GeForce generací RTX 2000 a 3000. V tomto není zvolené číselné značení moc šťastné.

Více: S RTX 4000 přichází Nvidia DLSS 3. Nová generace AI upscalingu generuje snímky, obchází limit CPU

DLSS 3.5 ve smyslu funkce Ray Reconstruction totiž ani nijak nevyžaduje, aby zároveň bylo použito generování snímků z DLSS 3, byť na grafu fungování Nvidia obě věci uvádí v jednom „flowchartu“ DLSS 3.5. Vývojáři her by měli být schopní použít jedno, ale ne druhé – proto by mělo být fungování Ray Reconstruction na GeForce RTX 2000 a 3000 užitečné. Ray Reconstruction ale kvůli propojení AI s upscalingem potřebuje, aby bylo současně aktivní DLSS 2.x.

Ve hrách na podzim

Podle Nvidie by se tato technologie měla objevit ve hře Cyberpunk 2077, na které firma ukazovala demo. Dále by měla být k vidění v remaku Portalu s raytracingovými efekty a Allan Wake 2.

ICTS24

Nvidia DLSS 3.5

Nvidia DLSS 3.5

Autor: Nvidia

Z her je to zatím všechno, další zmíněný software, který má funkci dostat, už se týká grafického renderingu mimo hry – má jít o Chaos Vantage, D5 Render a framework Nvidia Omniverse. Tyto tituly by měl být dostupné na podzim, na možnost toto otestovat tedy nebude třeba čekat moc dlouho.

Zdroj: Nvidia