Nvidia ray tracing - filmové efekty ve hrách, nebo cesta špatným směrem?
Real-time ray tracing je prozatím výsadou nejnovější generace grafických karet společnosti NVIDIA založené na architektuře Turing. Čipy Nvidia GeForce RTX i Quadro RTX byly představeny letos a v následujících týdnech se dostaly do prodeje. A protože v posledních týdnech byly na svět vypuštěny i nezbytné softwarové „rekvizity“, můžeme hovořit i o prvních reálných zkušenostech s touto technologií. Nejprve však stručný úvod.
Pro konvenční 3D rendering se doposud běžně využívala tzv. rasterizace, která světlo světa spatřila již kolem roku 1990. Při rasterizaci se využívají objekty vytvořené z velkého množství trojúhelníků nebo mnohoúhelníků. Vytvořené objekty jsou následně převedeny na pixely a 2D obraz. Jednotlivé pixely mohou být následně ještě dále přepracovány a následně jsou vykresleny do reálné scény.
Ray tracing, který se až doposud používal pro rendering v „nereálném“ čase, poskytuje realistické světelné efekty simulováním skutečného fyzického chování světla. Ray tracing vypočítává barvu pixelů z trasy světelného paprsku, kterou by skutečně nabral z pohledu diváka na vykreslovanou 3D scénu. Při průchodu scénou se světlo může odrážet od jednoho objektu ke druhému, může se odrážet, může být různými objekty blokováno, nebo může procházet průhlednými nebo částečně průhlednými materiály. Všechny tyto vlivy jsou při zpracování pomocí ray tracingu zohledněny do finálního zobrazení.
Po letech, kdy byl ray tracing jen těžko dosažitelný, se nyní stává součástí běžných grafických karet, které již mají pro potřebné výpočty dostatek výkonu. I přesto se však i do budoucna očekává, že se nejčastěji budou používat kombinované výpočty pomocí rasterizace i ray tracingu, s čímž se počítá i v integraci ve vývojářských API, kde zatím hrají prim dvě hlavní. První z nich je NVIDIA Optix, tedy aplikační framework, který využívá technologii RTX pro dosažení optimálního výkonu sledování paprsků na GPU. To poskytuje jednoduchou, rekurzivní a flexibilní metodu pro zrychlení algoritmů sledování paprsků. Kromě toho API post-processing zahrnuje AI urychlovač, který také využívá technologii RTX. Druhým významným API je pro ray tracing přímá podpora v rozhraní Microsoft DirectX, které umožňuje vývojářům vedle sebe plnohodnotně využívat ray tracing i rasterizaci. Vývojářům při práci může pomoci také NVIDIA GameWorks SDK. A samozřejmě se počítá také se zahrnutím ray tracingu do platformy Vulkan.
Ray tracing a Windows 10 October Update
Koncoví uživatelé, vlastnící podporovaný hardware, dostali reálně možnost ray tracing využívat spolu s říjnovou aktualizací Windows 10. Mezi první hry, které dokáží z nabízených výhod těžit, patří Battlefield V, Metro Exodus a Shadow of the Tomb Raider. Další hry budou samozřejmě přibývat.
Ray tracing v praxi
Vyzkoušet si ray tracing však stále není jednoduché, pokud pomineme zatím nabídkou omezenou jen na velmi drahé modely grafických karet, příliš se do adopce této technologie nehrnou ani samotní vývojáři. Jedním z prvních titulů, jehož majitelé se mohou z novinky těšit, se stal s nedávnou aktualizací ovladačů Nvidia dlouho očekávaný Battlefield V. Na přiložených videích a grafice vidíte, že hra vypadá opravdu dobře a v mnohém je posun skutečně zřetelný. O tom, že podporované hry budou vypadat skutečně dobře, však pravděpodobně pochyboval málokdo. Spolu s prvními testy a zkušenostmi se však dostaly na svět také informace o velké hardwarové náročnosti – i při rozlišení Full HD (které sice na hraní stačí, ale monitory a projektory jsou dnes již dál) běží hra na 30 – 60 fps. Což je sice opět hodnota dostatečná, nikoli však zrovna úchvatná. V tomto momentě je podstatné také doplnit, že Battlefield V používá výše zmiňovanou kombinaci ray tracingu a rasterizace, nároky u her, které se plně spoléhají na ray tracing, tak budou velmi pravděpodobně ještě vyšší. Samozřejmě, že vždy bude ve výsledku záležet na konkrétní kombinaci hardwaru i nastavení dané hry, ale o grafických nárocích netřeba spekulovat a pochybovat. Snad situaci trochu vylepší také postupně se zlepšující ovladače.
Závěrem
V současné chvíli j otázkou, zdali je ray tracing budoucností, nebo spíše jednou z cest. Technologie je to jistě potenciálně velmi zajímavá a její přínosy by mohly být (nejenom pro herní svět) značné. Nyní však stojí na svém začátku a bude zajímavé sledovat, jak na ni zareagují jak vývojáři, tak zákazníci.
Vývojáři, alespoň na první pohled, zdá se, reagují kladně – kromě výše zmiňovaných titulů se mohou hráči těšit na další novinky, například na Assetto Corsa, Atomic Heart, Control, Enlisted, Hitman 2? Justice, JX3, ProjectDH, Mechwarrior V, Serious Sam 4 a další.
Pomoci by samozřejmě mohlo, kdyby Nvidia tuto technologii nabídla také v levnějších modelech (v současné době stojí nejlevnější podporovaná grafika kolem 15 000 Kč, cena nejdražší se pak šplhá ke 40 000 Kč).