RayTracing brzy do her? Microsoft ohlašuje DXR pro DirectX12 s podporou AMD i NVIDIA.
Napsal Jan "DD" Stach   
Úterý, 20 březen 2018
alt

 

 

 

 

RayTracing brzy do her?

       Microsoft ohlašuje DXR pro DirectX12 s podporou AMD i NVIDIA.

RayTracing opět na scéně co by DXR pro DX12. NVIDIA představuje RTX a AMD pak ProRender. Většina z běžných hráčů her asi úplně přesně netuší, jak vzniká ta grafika her, kterou vypočítává grafická karta. Je několik možností, jak grafickou scénu vyrenderovat. Současná grafika ve hrách je výsledkem tzv. rasterizace a GPU jsou dnes na ně primárně postaveny. Existuje ale metoda, které se říká RayTracing, která dokáže vykreslit ještě realističtější obraz. Tato metoda je známa mnoho let, existuje řada benchmarků a technologických demo, bohužel jejímu skutečně reálnému širokému prosazení ve hrách brání obrovská výkonová náročnost a složitost. Dá se ale použít (a používá se) pro rendering scén ve filmech či vývojových software.

Už je to spousta let, kdy se naposledy o RayTracingu mluvilo v souvislosti s nasazením do her. Naposledy to bylo, když NVIDIA uváděla FERMI architekturu, tak její tehdejší prezentace slibovala téměř okamžité připravené nasazení RayTracingu do her. To se pochopitelně nestalo. Nicméně i po mnoha letech je stále RayTracing metodou, ke které se mnozí upínají, jako k budoucnosti. A nyní tady máme další dějství a tentokrát to vypadá, že se sice v malém množství, ale přeci jen „paprsků“ dočkáme :).

  • Microsoft DirectX Raytracing (DXR)

                            pro DirectX12 dostává podporu od NVIDA i AMD

Společnost Microsoft ohlásila nový standard DirectX RayTracing, který se stane součástí DirectX12 API. Jinými slovy se tedy opět na scénu vrací RayTracing a podporu této metody vykreslování v DirectX12 ohlašují AMD i NVIDIA na aktuálním GDC.

  • NVIDIA RTX technologie

 Asi nejdál zašla v prezentaci „znovuobjeveného“ RayTracingu NVIDIA. Představila technologie RTX, kdy kromě podpory Microsoft DRX, si NVIDIA hraje opět na svém písečku a přichází se stínovou technologií pro GameWorks optimalizovanou pro její GPU.

Současné grafické karty však jednoduše nemají dost výkonu na tuto metodu pro běžné herní použití, protože jsou stavěné na výkon pro rasterizaci. S jednou možnou výjimkou. Tím je výpočetní NVIDIA VOLTA V100 (TITAN V), která má speciální TENSOR jednotky, určené speciálně výpočetní nasazení v oblasti DeepLearning AI. NVIDIA ji ale zdá se našla ještě využití právě pro RayTracing, kdy se dokáží určitým způsobem podílet na výsledném obrazu a zefektivňovat tuto metodu. Bohužel nebyla uvedena žádná konkrétní čísla, jak moc, což j ale docela klíčové.

  • AMD spolupracuje s Microsoft na DXR a představuje Radeon ProRender

Na GDC nechybí ani AMD a taktéž mluví o podpoře a spolupráci s Microsoft na DRX. V jejím případě nepřekvapí, že se nesnaží o nějaký stínový koncept DRX exkluzivně jen pro AMD grafiky. Nicméně zatímco NVIDIA se v podstatě tváří, že větší nasazení RayTracingu do her je otázka několika příštích měsíců, AMD žádné velké zázraky neslibuje. Nicméně podporu MS DXR budou mít i současné grafiky, zejména VEGA.

Představuje také novou praktickou Radeon ProRender technologií pro GPU akceleraci, kombinující Raytracing s klasickou rasterizací. Cílem je nabídnout realisticky fyzikálně vypadající grafiku (tedy RayTracing výhoda), ovšem s rychlostí a výkonem, který nabízí rasterizace. Jinými slovy nabídnout to nejlepší z obou světů pro skutečné praktické použití. AMD tak v podstatě umí to samé, co NVIDIA s rozdílem, že k tomu nepoužívá nějaké specializované výhradně své výpočetní řešení skrze výpočetní jednotky (TENSOR) v konkrétním GPU. Otázkou je nasazení do praxe …

 

 

  • RayTracing ve hrách? Není to tak jednoduché …

Vývojáři reálných her jsou k nasazení RayTracing metody v současných hrách značně skeptičtější. Pravdou totiž je, že nasazení RayTracingu na místo Rasterizace naráží na stejné praktické překážky, jako před lety. Raytracing metoda sice dokáže výslednou scénu vykreslit o něco fyzikálně realističtěji, avšak rozdíl proti Rasterizaci ve výsledné podobě a použitelnosti pro hráče není tak velký, jako je obrovský rozdíl ve výkonu, který k tomu obě metody potřebují. Vykreslit stejnou scénu Raytracing metodou potřebuje několikanásobně vyšší výpočetní výkon, než vykreslení Rasterizací, kdy navíc potřebujeme ve hrách vykreslovat mezi 30-60 snímky za sekundu.

Tvůrci her se tak nechávají slyšet, že Raytracing metodu a technologie nadále sledují, aktivity MS, NV i AMD na tomto poli vítají, ale větší nasazení do her je hudbou vzdálenější budoucnosti. Hlavní problém je ale čistě v použitelnosti.

Ano RayTracing je velmizajímavou metodou a dnes díky vyššímu výkonu současných super high end GPU již potencionálně trochu použitelnou metodou a skutečně dokážete na jedné grafice ty scény vyrenderovat v rozumném čase dokonce i v reálné čase. Jenže úměrně s výkonem GPU pro RayTracing roste i výkon pro rasterizaci. A Tato metoda stále nabízí optimálnější využití HW výkonu, lepší celkový výkon, vyšší FPS a používá ji 100% her a 100% herních vývojářů. Kromě toho nevíme, jak moc je NVIDIA TITAN X (VOLTA V100) lepší pro RayTracing než jiná GPU, ale je to jedno, protože téměř určitě většina herních grafik nové generace takový výkon jako VOLTA V100 mít nebude. Především většina hráčů nebude mít GPU (ať už v PC či konzolích) použitelné na RayTracing metodu ve hrách, mnoho mnoho dalších let. Pro nějaké velké nasazení Raytracing renderingu ve hrách tak neexistuje vhodná doba ani uživatelé, metoda je stále mnohem méně efektivní než rasterizace …

Osobně si myslím, že tak uvidíme RayTracing jen v některých konkrétních herních scénách a to jen na některých velmi konkrétních drobných prvcích (jako je určitý druh osvětlení, stínování), což jak jsem pochopil je to, co NVIDIA RTX i AMD Radeon PRO Render v podstatě dělají. Tedy kombinují trochu RayTracingu na určité prvky scény, s většinovou rasterizaci, kdy je to sice výkonově náročnější, ale výsledkem by skutečně měly být vizuálně hezčí hry. Díky podpoře RayTracingu v rozšíření Microsoft DirectX12, co by průmyslovém standardu, tak na implementaci mohou pracovat herní vývojáři (UNIYTY, UNREAL Engine, FrostBite mají DXR umět). A tak je možné, že se velmi malých porcí RayTracingu ve hrách dočkáme v dohledné době. Rozhodně ale nepůjde o nahrazení rasterizace, a tak výkon v této oblasti bude pro grafické karty stále naprosto stěžejní a nějakou velkou hru vytvořenou kompletně Raytracing metodou tak rozhodně ještě dlouho neuvidíme. Uvidíme maximálně RayTracing prvky, které ale mohou mít zásadní (až drastický) dopad na výkon, výměnou za o něco hezčí a zajímavěji vyhlížející scénu.

Samozřejmě se nejspíše neobejdete bez velké investice do nového a velmi výkonného GPU a RayTracing prvky tak mohou být zajímavým marketingovým lákadlem ke koupí nové výkonnější grafiky nebo nové konzole. Takže DRX je zajímavá technologie pro AMD i NV. Osobně ale počítám, že stejně jako DX12, tak DirectX RayTracing se ve hrách bude objevovat velmi pozvolna. Jednou z prvních her s podporou Microsoft DXR by měl být třetí díl METRO série, plánované na konec roku. Takže očekávejme krvavé HW nároky na plné detaily. Každopádně AMD i NVIDIA budou chtít být evidentně připraveny …

 

AUTOR: Jan "DD" Stach
Radši dělám věci pomaleji a pořádně, než rychle a špatně.

Starší články


Komentáře
Přidat Nový
Timmaigh! [Zobrazit profil] [Poslat zprávu] - Tensor cores 2018-03-20 19:10:12

To aj oni uviedli, ze na ten raytracing pouzivaju tie Tensor jadra, alebo sa o tom niekde pise, ci to je Vasa domienka?

Osobne o tom velmi pochybujem. Viem ale, za napriklad Octane Render ma mat v dalsej verzi zabudovany AI denoiser, tak mozno aj Nvidia vidi priestor na vyuzitie svojho specializovaneho AI hardwaru na podobny ucel.

V kazdom pripade, kedze sa jedna o GameWorks, tak to urcite bude ficat aj na hernych Volta kartach, a tie by ma velmi prekvapilo, keby tie Tensor jadra mali. No uvidime.
shipo [Zobrazit profil] [Poslat zprávu] 2018-03-20 21:12:02

Ano, využila TensorCore(=vynásob obecné matice a sečti je) pro RayTracing: Odkaz "According to NVIDIA, RTX provides speedups of several hundred percent (ie, 2x, 3x faster) over the default DXR Compute Shader path." + "NVIDIA's RTX requires "Volta" (or later) GPUs"
Timmaigh! [Zobrazit profil] [Poslat zprávu] - Diky 2018-03-20 21:40:21

Diky za link! Je to teda tak ako v pripade Octane. Kto by to bol povedal, ze nastup raytracingu napokon urychli pokrok v AI oblasti....
Teraz ocakavam, ze Tensor cores budu aj v GTX2080 - aj ked v mensom pocte ako v pripade Titan V. Urcite to nebude podporovat len karta za 3 litre.
potooczech [Zobrazit profil] [Poslat zprávu] 2018-03-21 08:03:10

Raytracing bude mít vždy lepší světlo, stíny, odrazy a ve výsledku i věrnější a přirozenější barvy. Čili celá ta scéna bude vypadat podstatně lépe a věrněji. Ale bohužel zatím měl proti rasterizaci asi 3x vyšší nároky na výkon při stejné scéně a rozlišení.

Uvidíme, jak se v tomto směru zadaří Nvidii s tensor jednotkami, které by měly řešit právě problém s výkonem. Pokud by tensor jádra dokázala srovnat nároky na výkon na úroveň podobnou rasterizaci, tak bychom se mohli těšit na poměrně dost dobře vypadající novou generaci her. Ten skok po přechodu na raytracing by byl celkem viditelný.

Je to svým způsobem hozená rukavice vůči AMD. Protože pokud si Nvidia do standardů typu Direct X prosadí prvky, které budou šité na míru jejím tensor cores a zdarma pomůže vývojářům her dané prvky zapracovat do nových her, tak samozřejmě AMD bude mít ve výsledku problém, pokud by danou úlohu řešilo neefektivně přes shadery.
aDDmin [Zobrazit profil] [Poslat zprávu] 2018-03-21 11:22:35
avatar
je otázka kolik těch TENSOR jader bude která karta mít ..... zatím mimo TITAN V, což není herní grafika, neexistuje žádné jiné GPU, které by TENSOR jádra měla a pokud bude existovat v dohledné době, tak rozhodně nebude nikde poblíž výkonu TITAN V ;)

drtivá většina hráčů nebude mít v následujících letech grafiky, které budou mít nějak lepší schopnosti pro raytracing, než mají současné modely, takže vývojáři her s tím musí počítat ;) jde hlavně o grafiky v konzolích ...
potooczech [Zobrazit profil] [Poslat zprávu] 2018-03-22 10:03:06

Tak ta tensor jádra doposud mířila na oblast AI, pro která jsou určena. Teď v podstatě Nvidia přišla na způsob, jak ten princip využít pro akceleraci raytracingu.

Nicméně je to klasický předěl. Dokud nebudou hry, nebudou grafiky s tensor jádra, která by se tam válela zbytečně. A dokud nebudou grafiky, nebudou hry

Proto se to zatím protlačuje na profi scéně. Plus počítám, že raytracing se začne ve hrách uplatňovat spíše pro specifické efekty, podobně jako teselace. Tedy, že postupně do her přibudou efekty, které bude možné zpracovat přes shadery nebo rychleji přes tensor cores. A pak se uvidí, kam se to bude vyvíjet. Každopádně je to opět typický prostor pro Nvidii. Stačí si vzpomenout na odlišný přístup Nvidie k teselaci, kdy měla vyšší hrubý výkon a díky tomu lepší výsledky při nesmyslně náročně nastavené teselaci. Pak se dalo snadno díky teselaci zařídit, že karty AMD měly o dost nižší výkon. Na vzhledu scény to přitom nijak znát nebylo. Zde to může být obdobné. Pokud se ve hře vyskytne efekt, který karta Nvidie díky tensor jádrům zpracuje 3x rychleji než AMD pomocí shaderů, tak opět můžeme mít hry, kde Nvidia získá náskok v desítkách procent. A přitom to nemusí být na vzhledu hry nikde vidět. Čili proto jsem zvědavý, jak AMD na tensor cores zareaguje.

Ono konzole si asi těžko budou moci dovolit přes shadery vykreslovat scénu pomocí raytracingu .
digitalis [Zobrazit profil] [Poslat zprávu] 2018-03-21 08:21:18
avatar
Krasna ale velmi vzdialena hudba buducnosti.
AndyF1 [Zobrazit profil] [Poslat zprávu] 2018-03-21 09:14:57

Ked vznikol dobyt na Bitcoins tak vyrobci rychlo uviedli specificky vyvinute optimalizovane ASAIC minery. Na raytracing v hrach zatial nieje dostatocny dopyt tak sa doteraz poriadne nevyvijali specificke vypoctove jednotky v GPU chipoch. No uvidime kam sa to casom posunie. zatial som nasiel len zopar produktov , Caustics R2500 a Imagination PowerVR GR6500 GPU.
Dubik [Zobrazit profil] [Poslat zprávu] 2018-03-21 11:16:29
avatar
Vypada to pekne , ovsem realita je a bude jina.. Dle me se prinos projevi max. v par titulech jako demonstrace a v lehke forme. DX 12 i treba Vulkan se dosud neprosadilo,jak by si zaslouzilo.To stejne 4K.Lidi nacpou penize do podstatnejsich veci jak tohoto.
aDDmin [Zobrazit profil] [Poslat zprávu] 2018-03-21 11:20:03
avatar
VULKAN se neprosadilo? .... vždyť na něj přešel celý Google s Androidem ;) a zcela nahrazuje OpenGL ....
Dubik [Zobrazit profil] [Poslat zprávu] 2018-03-21 13:02:20
avatar
Mam na mysli ve hrach. Tam to ma jen Doom a Wolf
FOFafik [Zobrazit profil] [Poslat zprávu] - Vulkan 2018-03-21 14:46:12

Vulkan se začíná prosazovat při portaci her pro Linux, třeba F1 2017 už je Vulkan Exclusive, jiné zatím umožňují i OpenGL:

https://www.phoronix.com/scan.php?page=article&item=march-2018-gpus&num=4

A nebo projekt DXVK, kdy se překládá "realtime" DX11 do Vulkanu ve WINE pro hraní Windows only her:
https://www.youtube.com/watch?v=WfoCyKV9n_s&t=162s

Nebo již existuje knihovna pro Vulkan na MacOS.
Epyc [Zobrazit profil] [Poslat zprávu] 2018-03-21 11:46:42

Vdiť Raytracing, je vlastně převod technologii jako je iRay,Vray do realného času, nic více. Nvidia přišla před rokem s takzvaným Deep renderingem, který dovede renderovat scénu i pomocí AI, ne však používát jako výkonový prvek, ale jako prvek určující co zrovna je důležité renderovat. Kdy to funguje tak, že vyrenderujete třeba auto a jeho okolí, ale když se přesunete do vnitřku auta, tak se to co již bylo vyrenderováno pro pohled zvenku nerenderuje znovu, ale pouze se dopočítá to co vidět předtím nebylo, což je docela velice užitečná věc hlavně pro animační studia.

Tensor processory, jsou tedy použitelné, ale nejsou stežějní pro raytracing jako takový.

Mimochodem iray raytracing renderer nvidia podporuje již od roku 2015 zdarma.

Takže ona to není žádná přelomová technologie, pouze je problém, že jjí náročnost je tak velká, že přivést ji do her je problematické z hlediska výkonu.

Tento render Odkaz
jsem udělal na 1080ti za 1 minutu pomocí iRay. Představa, že by měl být v nějaké scéně a dávat alespoň 30 fps :d No asi si to každý dovede představit.
bobesko [Zobrazit profil] [Poslat zprávu] 2018-03-21 20:33:59

Taka teoreticka otazka, kolko vykonu by karta potrebovala mat, aby dokazala dat plynulo hru, kde by bolo vsetko vytvorene raytracingom a nie iba nejake prvky ako reflexie povrchov a podobne, tak ako je to prezentovane v tychto demach?
Epyc [Zobrazit profil] [Poslat zprávu] 2018-03-21 20:37:42

precti si můj přízpěvek nad tvým. Odhadem asi jako 100 +-karet 1080ti.
shipo [Zobrazit profil] [Poslat zprávu] 2018-03-22 01:56:03

Na FullHD 30fps mají pro tohle: Odkaz čtyři Volty propojené NVLinkem - 2688tensor jader(21500normálních, 85 miliard tranzistorů, 1200W, cena auta). Pod UE4 si s tím hráli interaktivně na GDC: Odkaz
Pouze registrovaní uživatelé mohou přidat komentář!