Jak funguje ray tracing. Je to hudba budoucnosti

Přinesla Nvidia takový pokrok, jaký slibovala?

4. 12. 2018
Název hry: Battlefield V Vývojář: Vydavatel: Datum vydání: 11. 10. 2018 Platformy: , , Žánr:

Koncem léta se Nvidia postarala o překvapení pro hráče stěžující si na minimální grafický pokrok ve videohrách. Po několika letech naplněných drobnými evolučními krůčky v podobě většího počtu polygonů a detailnějších textur připomněl tento výrobce technologii ray tracing. Ta se ve videohrách objevila již před několika lety, v případě už málem 10 let starého experimentu Quake Wars: Ray Traced. Tehdy šlo ale spíše o technologické demo a nejinak tomu bylo i v dalších případech. To už je ale minulostí a aktuálně Nvidia slibuje být nositelem revoluce a opravdového posunu v grafice počítačových her. Bližší pohled na znovuzrozenou mechaniku vykreslování scén ale odhalí hned dva zásadní nedostatky – cenu grafických karet a reálnou míru pokroku.

Určitě ale neškodí vzít to popořádku a připomenout si současný stav. V dnešních titulech je grafika vykreslována za pomocí takzvané rasterizace – obrazovka se rozdělí na síť pixelů a grafický hardware vyhodnotí, jakou mají dané pixely barvu. To v praxi znamená nutnost předem za pomocí polygonů a textur vytvořit modely, doplnit je o zdroje světla a následně scénu propočítat a převést na dvourozměrný obraz podobně, jako malíř převádí svou vizi světa na plátno. Každý bod rastru má v takovém případě svoji přesnou polohu i barvu. Kvalitu ovlivní zejména rozlišení a barevná hloubka, tato technologie však má svá zásadní a logická omezení. Rasterizací vykreslené zrcadlo je kupříkladu pouhým objektem složeným z pixelů. Věc odrazu či odlesku světla je v takovém případě problémem, neboť s tímto rasterizace zacházet neumí. Rozhodně ne v reálném čase a už vůbec ne realisticky.

Celkový obraz scény je díky této technologii vytvořen souborem dopadajících světelných paprsků, z nichž každý urazil jinou cestu a každý byl ovlivněn odlišnými faktory či povrchy.

Právě příklad zrcadla je přitom něco, co právě ray tracing umí z hlediska realistického dojmu na výbornou. V případě raytracingu totiž nesledujeme výsledek, tedy barvu daného bodu na obrazovce, ale při vykreslování scény sleduje algoritmus cestu paprsku světla. Zvolená trasa je přitom braná zpětně – tedy z oka (či od kamery) až ke zdroji. Trasa světelného paprsku ale stejně jako ve skutečnosti není přímočará, docházet může k lomům světla a jednotlivé paprsky se mohou od určitých ploch porůznu odrážet. Celkový obraz scény je díky této technologii následně vytvořen souborem dopadajících světelných paprsků, z nichž každý urazil jinou cestu a každý byl ovlivněn odlišnými faktory či povrchy. Sledování paprsků pochopitelně funguje pouze do určité míry a například po předem zvolený počet odrazů. Stejně tak není možné sledovat nekonečné množství jednotlivých paprsků, ale lze například zjednodušeně přiřadit jeden paprsek k jednomu pixelu. Výsledkem jsou realističtější scény s odlesky nejen v zrcadle, ale například i na hladině vody. Díky ray tracingu vznikají rovněž i realističtější stíny, uvěřitelnější exploze, a další jemné grafické detaily.

Nejde přitom o nic nového a s ray tracingem se lze setkat i v běžném životě. Když pomineme fakt, že na podobném principu funguje i naše vnímání podoby okolního světa, tak se určitě můžeme obrátit pro příklad i na filmový průmysl. Tam se tato technologie již dlouhá léta využívá k vytváření realisticky vypadajících scén tvořených pouze počítačem. Sami v paměti určitě naleznete příklad toho, kdy jste nad realismem některých počítačem renderovaných scén jen kroutili hlavou a přemýšleli jste, jak je to jen možné. Právě ve filmech je přitom ray tracing běžně využíván proto, že tvůrci mají při vytváření k dispozici mnohem více času i výkonu.

Ray tracing ve filmech

Nejbohatší zkušenosti s ray tracingem ve filmovém průmyslu mají ta studia, která se na počítačem vytvářené scény vyloženě specializují. Mezi ty nejpokrokovější v tomto ohledu tedy patří například Dreamworks, Pixar a Disney, do jejichž portfolia spadají snímky Shrek, Hledá se Nemo či Auta. Stranou ale rozhodně nestojí ani hrané snímky. Zde je příkladů dnes již nepřeberné množství, namátkou lze určitě zmínit filmy Hulk, Spider-Man či sérii Matrix. Obecně lze tvrdit, že čím více toho vzniká na pozadí zeleného plátna, tím více CGI je zapotřebí a s tím ruku v ruce přichází i větší potřeba implementace ray tracingu.

Tou zásadní nevýhodou a důvodem, proč s rozšířením technologie přichází Nvidia až nyní, jsou totiž obří nároky na výpočetní výkon. Počítat obecně cesty jednotlivých paprsků v reálném čase není v praxi ještě možné ani nyní a v případě filmů je něco takového realitou jednoduše proto, že renderování probíhá předem na serverových farmách s docela jinými možnostmi po stránce výkonu a strojového času. Je tedy nad slunce jasné, že ta opravdová revoluce se zatím nekoná a ani Nvidia se momentálně nepokouší o zázraky a volí zlatou střední cestu. Tou jsou takzvané hybridní technologie.

Ve dvou se to lépe táhne

Ty spočívají v kombinaci obou zmíněných způsobů renderování. Za předchozí léta se přeci jen rasterizace stala úžasnou technikou, jež poskytuje výborné výsledky, ray tracing ale dokáže přinášet citelný posun právě na lesklých plochách a v případě realistických stínů. Tedy tam, kde klasické vypočítání barvy pixelu není nikdy tak přesné, jako když stroj zjistí přesnou cestu světelného paprsku. Výsledkem tedy v současnosti mohou být scény, kde klasickou rasterizaci použitou v masovém měřítku doplňuje v malém měřítku ray tracing jakožto technologie starající se jen o určité aspekty výsledného obrazu. Nutností je samozřejmě implementace ze strany vývojářů her a jejich kooperace s Nvidií. Ta spolu s novými grafickými kartami s architekturou jménem Turing vydala vývojářské nástroje sloužící k tvorbě právě lepších odlesků i stínů. A mezi první tituly, které tuto technologii využívají, patří například Battlefield V, Shadow of the Tomb Raider či Metro: Exodus. Další hry ale jistě budou následovat, neboť podporu hlásí například i tvůrci páteřních technologií Unreal Engine, Unity i Frostbite.

Pokud tedy uvažujete, zda si Ježíškovi napsat o novou grafickou kartu z řady GeForce RTX 20 (tedy 2070, 2080 či 2080 Ti), tak vám určitě jednoznačně není lehké poradit. Jde přeci jen o drahý hardware (základní varianty karet vyjdou na 15 tisíc korun) a onen posun ještě není tak dramatický ani četný. To důležité ale nyní je, že onen pokrok je v tomto případě především myšlenkový – ray tracing v reálném čase už konečně možný je, byť prozatím v malé míře a pouze v několika málo titulech. Další cesta vývoje grafické podoby her se ale zdá být nalinkována.

Nahlásit chybu v článku

12

Napsat komentář

Mohlo by vás zajímat

Nahoru