Průvodce světem technologií NVIDIA: Čím ray tracing posouvá herní grafiku zase o kus dál
i Zdroj: NVIDIA
Grafické karty Článek Průvodce světem technologií NVIDIA: Čím ray tracing posouvá herní grafiku zase o kus dál

Průvodce světem technologií NVIDIA: Čím ray tracing posouvá herní grafiku zase o kus dál

Adam Vágner

Adam Vágner

102

Seznam kapitol

1. Proč ray tracing? 2. Ray reconstruction 3. Ray tracing ve hrách v praxi 4. Vliv ray tracingu na výkon

Na ray tracing jedni nedají dopustit kvůli tomu, jak může pozvednout kvalitu herní grafiky, a jiní jeho přítomnost ve hrách nesou nelibě kvůli jeho dopadu na výkon. Podíváme se, proč a k čemu má smysl ray tracing ve hrách využívat.

Reklama

Tradiční rasterizace používaná pro rychlý rendering ve hrách má řadu omezení. Například není schopna efektivně simulovat odrazy světla od povrchů. Techniky, jimiž to vývojáři obcházejí (třeba mapy prostředí, odrazy z prostoru obrazovky – SSR), mají nižší kvalitu a trpí zkreslením. Jednoduché není ani získat kvalitní stíny; v mapách stínů bývají artefakty kvůli nižšímu rozlišení, mívají tvrdé nebo naopak příliš neostré hrany, a u objektů bývá i problém se stíny, které se překrývají, nebo které vrhají objekty samy na sebe. Potíž je i s výpočty nepřímého osvětlení a rozptýleného světla (používají se efekty pro simulaci globálního osvětlení jako SSAO či HBAO, ovšem mají omezený dosah, ty rychlejší jsou méně kvalitní a ty kvalitnější zase výpočetně náročné). A potíže dělají i průhledné a průsvitné materiály a simulace lomu světla. 

Většinu z těchto jevů lze nějak napodobit, ne vždy je však iluze dokonalá. Využívají se například různé vyhlazované mapy, jenže ty mívají nižší rozlišení, kvůli optimalizaci nejsou aktualizované v reálném čase nebo nezahrnují všechny objekty ze scény, při pozorování z ostrých úhlů jsou zkreslené, mají omezený dosah simulace, a jsou-li předpočítané, nereagují na změny ve scéně. 

Chcete-li coby herní vývojář s pomocí rasterizace dosáhnout realističtějšího výsledku, musíte nakonec všechny ty přidané efekty nějak poslepovat, aby fungovaly dohromady a naroubovat je na rasterizovanou scénu. Ray tracing naproti tomu dokáže řadu z těchto jevů simulovat přirozeně a přesněji díky možnosti sledovat cestu jednotlivých paprsků světla a jejich interakce s různými druhy materiálů.

Zjednodušeně se snad dá říci, že s ray tracingem lze přímo počítat to, co se vývojáři pokoušejí u rasterizace nějak obejít a napodobit. A ne vždy stojí výsledek imitace za to. 

Pro příklad si vezmeme rasterizovaný snímek z Dead Island 2. Jinak velmi povedenou grafiku kazí detaily jako obrovské zrcadlo na stěně tělocvičny, které si o využití ray tracingu přímo říká. Při rasterizaci s tradičními technikami dali vývojáři na zrcadlo pouze mapu prostředí. Její nízké rozlišení by nevadilo zdaleka tak jako to, že na odrazu scházejí eliptické trenažery. Tedy scházejí, místo nich je na podlaze a stěně pouze jejich zdeformovaná projekce na kubickou mapu. Svět za zrcadlem tak vypadá úplně jinak než před ním a celá scéna kvůli tomu působí dost tragikomicky.

Průvodce světem technologií NVIDIA: Čím ray tracing posouvá herní grafiku zase o kus dál
i Zdroj: PCTuning.cz

Odrazy se při rasterizaci napodobují třeba pomocí map prostředí. 
Ne vždy je výsledek uspokojivý, na příkladu z Dead Island 2 se podívejte, co v „odrazu“ zbylo z trenažerů.

Odložit to o dalších deset let, nebo…?

Důvod, proč se ray tracing ve hrách masově nevyužíval, byla jeho vysoká výpočetní náročnost. Abyste získali obraz, v němž je každý bod ovlivněný okolním prostředím, musíte přes každý z nich vyslat velké množství paprsků do mnoha směrů tak, aby toto prostředí zmapovaly a interagovaly s objekty a světly na celé scéně.

Průvodce světem technologií NVIDIA: Čím ray tracing posouvá herní grafiku zase o kus dál
i Zdroj: PCTuning.cz

Proto ray tracing dlouho patřil do profesionální sféry a využíval se pro časově náročný rendering, jako jsou filmové vizuální efekty a vizualizace, u nichž bylo možné využít výkonné výpočetní farmy a nebylo zapotřebí renderovat v reálném čase. Souběžně s tím vývojáři pracovali jak na optimalizacích softwaru, tak na jeho akceleraci pomocí hardwaru. NVIDIA pro rendering v profesionálním segmentu vyvinula technologie OptiX a Iray a pracovala na optimalizaci ray tracingu a pokročilých metodách odstranění šumu. Odšumování umožňuje zachovat vysokou vizuální kvalitu, i když je pro výpočet podoby bodu použitý nižší počet paprsků. Zároveň NVIDIA vyvíjela pro GPU specializované jednotky, které výpočty používané při ray tracingu hardwarově akcelerují.

Dost rychlý i na hry

Ray tracing se nakonec podařilo urychlit natolik, že bylo možné jej v kombinaci s dalšími optimalizacemi pro rendering v reálném čase využít, a bylo jej možné nasadit i ve hrách. V nich se používají dva základní přístupy – hybridní ray tracing, který kombinuje ray tracing pro specifické efekty a tradiční rasterizaci pro dosažení vyššího výkonu a náročnější tzv. path tracing, v němž se ray tracing využívá pro vykreslování celé scény.

Ve většině her se využívá hybridní ray tracing. Kombinuje výhody ray tracingu a rasterizace. Celá scéna se počítá pomocí rasterizace a ray tracing se používá jako další vrstva, která vizuální efekty vylepší tam, kde to má největší přínos. Lze dynamicky měnit to, pro jaké efekty, objekty a v jaké kvalitě chcete ray tracing využít, co z něj vynechat, a tím přizpůsobit kvalitu schopnostem použitého hardwaru.

Path tracing proti tomu využívá ray tracing pro rendering celé scény. Vychází z pohledu pozorovatele a přes jednotlivé obrazové body vysílá paprsky, které se postupně odrážejí nebo prostupují objekty ve scéně až ke zdrojům světla. Během toho se zaznamenává, jak interakce paprsek ovlivnily a mapuje se jeho cesta – proto path tracing. Optimalizace se zaměřují spíše na to, jak snížit počet potřebných paprsků a následně se s nižším počtem vzorků vypořádat tak, aby měl výsledný obraz dostatečnou kvalitu a vypadal realisticky.

Jak u hybridního ray tracingu, tak u path tracingu je jednou z možností, jak dosáhnout vyššího výkonu, rendering v nižším rozlišení a následná rekonstrukce obrazu do vyššího rozlišení s pomocí DLSS a generování mezisnímků Frame Generation.

Titulů s plnohodnotným path tracingem je zatím poskrovnu. Důvod je nasnadě – pro vývojáře to na rozdíl od hybridního ray tracingu znamená implementovat do hry vedle klasické rasterizace i samostatnou větev pro rendering, které lze nakonec využít pouze na výkonných dedikovaných grafikách pro PC. I když už jej má implementovaných několik her a další už jsou ohlášené, zkraje se s path tracingem setkáme spíše u titulů, do nichž lze path tracing přidat i zvenčí nezávisle na vývojářích buď díky tomu, že mají otevřené zdrojové kódy, nebo díky modifikacím. Platit to bude zejména pro hry s modifikacemi využívajícími technologie RTX Remix, jako je nedávno uvedený Portal: Prelude RTX.

Předchozí
Další
Reklama
Reklama

Komentáře naleznete na konci poslední kapitoly.

Reklama
Reklama