Quake II RTX: jak funguje ray tracing na GeForce RTX
PCTuning Článek

Quake II RTX: jak funguje ray tracing na GeForce RTX

Adam Vágner

Adam Vágner

28. 6. 2019 03:00 50

Seznam kapitol

1. Ray tracing jako nikdy dříve 2. Quake II a (testované) mody 3. Je to dostatečně jasné? 4. Srovnání modů – použité nastavení 5. Srovnání modů ve dvou scénách 6. Dejte si pauzu (pro maximální kvalitu ray tracingu)
7. Úhel pohledu 8. Co a jak se renderuje 9. Jak to zprovoznit, konzole a cheaty 10. Sky Type 11. Nastavení grafiky

Nvidia před nedávnem vydala vlastní modifikaci letitého Quake II s podporou technologie RTX. Původní renderer nahradila vlastním, který obraz vykresluje s pomocí ray tracingu. A jde zatím o nejkomplexnější implementaci této technologie, na níž lze demonstrovat, co bude ray tracing znamenat pro kvalitu obrazu.

Reklama
Reklama

Pokud jste viděli úvodní video s „nalejvárnou“ od Nvidie a rozuměli jste mu, můžete tuto kapitolku přeskočit, bude to jeho prosté převyprávění.

Na úvodním snímku je schéma path traceru implementovaného do Quake II RTX.

Quake II RTX: jak funguje ray tracing na GeForce RTX

Začneme z kamery (či chcete-li z oka), ze kterého do scény vyšleme primární paprsek.

Quake II RTX: jak funguje ray tracing na GeForce RTX
Quake II RTX: jak funguje ray tracing na GeForce RTX

Render, který má údaje o scéně jen z tohoto primárního paprsku (s jednoduchým ambientním světlem, bez kterého by scéna byla černá), vypadá nějak takto:

Quake II RTX: jak funguje ray tracing na GeForce RTX

Když se primární paprsek setká s povrchem, tak se od něj odráží nebo láme (anebo obojí). Ve scéně se potká s tvarovaným sklem, které je částečně propustné a částečně odráží obraz.

Quake II RTX: jak funguje ray tracing na GeForce RTX

Na snímku se pak objeví odraz zadní stěny místnosti za kamerou (reflection), který se navíc láme na tvarovaném sklu.

Quake II RTX: jak funguje ray tracing na GeForce RTX

Renderer posílá z místa prvního odrazu paprsky náhodnými směry, kde narazí buď na různá místní světla, anebo na stín.

Quake II RTX: jak funguje ray tracing na GeForce RTX

Podle toho získá barvu a intenzitu nasvícení. A už tady vidíte, že scéna získala plastičtější podobu a přibylo nejen světlo, ale vystoupily v ní i stíny – třeba za sudem.

Quake II RTX: jak funguje ray tracing na GeForce RTX
Quake II RTX: jak funguje ray tracing na GeForce RTX

V dalším kroku se přidá světlo od slunce – engine posílá paprsek a opět zkoumá, jestli narazí na světlo od slunce, nebo na stín.

Quake II RTX: jak funguje ray tracing na GeForce RTX

A takto to vypadá, když se ve scéně objeví místa nasvícená přímým slunečním světlem.

Quake II RTX: jak funguje ray tracing na GeForce RTX
Quake II RTX: jak funguje ray tracing na GeForce RTX

Dalším příspěvkem do nasvícení scény je nepřímé osvětlení. Ke světlům se v pátém kroku přidává i osvětlení scény světlem odraženým od okolních povrchů (5).

Quake II RTX: jak funguje ray tracing na GeForce RTX

Quake II RTX: jak funguje ray tracing na GeForce RTX
Quake II RTX: jak funguje ray tracing na GeForce RTX

I z „přisvětlovacích“ povrchů se posléze opět posílá paprsek ke blízkým zdrojům světla ve scéně.

Quake II RTX: jak funguje ray tracing na GeForce RTX

Díky tomu daný bod naakumuluje světlo ze scény, takže celá scéna opět o něco zesvětlí (a opět je o něco plastičtější.

Quake II RTX: jak funguje ray tracing na GeForce RTX
Quake II RTX: jak funguje ray tracing na GeForce RTX

A k tomu se opět přidá sluneční světlo. Z přisvětlovacího povrchu pošle engine paprsky vedle místních světel i do slunce.

Quake II RTX: jak funguje ray tracing na GeForce RTX

Na scénu to má mnohem výraznější dopad než lokální světla, získá tím opět větší plasticitu a výraznější dojem nasvícení pomocí „globálního osvětlení“).

Quake II RTX: jak funguje ray tracing na GeForce RTX
Quake II RTX: jak funguje ray tracing na GeForce RTX

A lze jít i dál a přidávat osvětlení od ploch nasvícených světlem od jiných ploch nasvícených zase jinými plochami a světly, téměř donekonečna. Záleží jen na tom, do jaké míry preferujete vyšší kvalitu obrazu než vyšší výkon.

V posledním kroku je zapotřebí z obrazu odfiltrovat šum.

Quake II RTX: jak funguje ray tracing na GeForce RTX

Pro rendering v reálném čase engine používá jen „pár“ paprsků na pixel. Denoiser potom vezme obraz s poměrně nízkým vzorkováním a snaží se z něj rekonstruovat plnohodnotný obraz. Využívá pro to kombinaci odšumování statického obrazu a kombinaci více po sobě jdoucích snímků. Protože je obraz generovaný náhodně, šum na dvou po sobě jdoucích snímcích se liší a jejich kombinací získáme vyšší počet vzorků. Je to běžná technika využívaná i při odstranění šumu z videa, nevýhodou je, že mírně rozmazává obraz a při rychlejších pohybech kontrastních objektů se v obraze mohou dělat artefakty, obvykle ve formě duchů.

Na dalším obrázku je porovnání trvání renderingu jednoho snímku v závislosti na využití nových optimalizací pro rychlejší rendering a ray tracing u karet s architekturou Turing. Na prvním grafu je renderning na GTX 1080 Ti s architekturou Pascal, kde se počítá jen na klasických FP32 Cores.

Na druhém snímku je už RTX 2080, kde je část zátěže rozložená na FP32 a část na INT32 cores a výkon je zhruba poloviční. A když s výpočty pomohou i RT Cores, tak se klíčová část výpočtu smrskne ještě asi čtyřikrát.

Quake II RTX: jak funguje ray tracing na GeForce RTX

Další snímek ukazuje Q2 RTX, kolik času zabírá která část pipeline. V první části (Geometry VH) se připravuje scéna do podoby vhodné pro ray tracing. Následují výpočty odrazů, lomu světla a přímého osvětlení. Nejvíc, asi třetinu času, zabírá výpočet nepřímého osvětlení (indirect lighting), které ale obrazu přidává na věrnosti nejvíc (a obdobné je to s náročností nepřímého osvětlení i při klasickém renderingu). Na závěrečných výpočtech už se RT Cores nepodílejí a tak je stejně náročný jak s nimi, tak bez nich – jde o odšumování a post processing.

Quake II RTX: jak funguje ray tracing na GeForce RTX

Předchozí
Další
Reklama
Reklama

Komentáře naleznete na konci poslední kapitoly.

Reklama
Reklama

Byl detekován AdBlock

PCTuning je komunitní web, jehož hlavním příjmem je reklama. Zvažte prosím vypnutí AdBlocku, ať můžeme všem čtenářům i nadále přinášet kvalitní herní zpravodajství, články a videa.

Děkujeme!

Váš tým PCTuning