NVIDIA ray tracing s Asus ROG Strix Gaming RTX 3070 OC Edition
Grafičke kartice GeForce RTX 30 sa sobom donose drugu generaciju hardverske podrške za ray tracing. Saznajte zašto ray tracing izgleda vjernije od klasičnog renderiranja rasterizacijom i kako je evoluirao u posljednjih par godina
Ray tracing je metoda renderiranja 3D grafike temeljenoj na praćenju zraka svjetlosti u obliku piksela i simuliranju interakcije tih zraka svjetlosti s virtualnim objektima. U osnovi ovo je vrlo slično načinu kako očima gledamo svijet oko sebe – zrake svjetlosti iz izvora svjetlosti kao što su sunce, žarulja ili svijeća padaju na predmete u našem vidnom polju, odbijaju se od njih (ili djelomično prolaze ako je predmet proziran), a ono što stiže do našeg oka su refleksije tih zraka. Jedina teoretska razlika je u tome što je kod računalnog ray tracinga polazišna točka zraka virtualna kamera koja gleda na 3D scenu, čim se znatno smanjuje broj zraka čiju interakciju treba izračunati.
Zbog realističnosti prikaza ray tracing je iznimno koristan za postizanje određenih efekata u računalnoj grafici, no kako je računski izuzetno zahtjevan, do prije nekoliko godina nije bio iskoristiv u kontekstu računalnih igara. Jer dok je 3D animacije za film i kakav statički 3D model moguće renderirati doslovno satima i danima, naše oči očekuju renderiranje grafike u stvarnom vremenu pri barem 30 sličica po sekundi, a idealno i puno više. Za prikaz grafike u 3D igrama se stoga koristila i još uvijek se primarno koristi metoda pod imenom rasterizacija, a koja nudi odličan omjer performansi i kvalitete prikaza, no izgelda manje vjerno u odnosu na ray tracing.
Sve se mijenja s prvom generacijom grafičkih kartica optimiziranih za računanje ray tracinga – Nvidijinom serijom GeForce RTX 20 temeljenoj na arhitekturi Turing. Nakon 10 godina razvoja, Nvidia je krajem 2018. godine lansirala seriju GPU-ova opremljenih s dediciranim jedinicama za računanje ray tracing efekata, takozvanim Ray Tracing jezgrama, dok su dotadašnje grafičke arhitekture imale samo CUDA/GeForce jezgre, optimizirane za klasičnu rasterizacijsku grafiku.
Nvidia je tada nove mogućnosti svojih kartica osim s posebnim tehnološkim demoima demonstrirala i u jednom od najpopularnijih modernih FPS-ova– Battlefieldu V. Razvojni inženjeri švedskog studija DICE u 3D engine Frostbite koji pogoni BF V implementirali su podršku za realističniji prikaz refleksija uz pomoć ray tracinga dok se ostali elementi grafike i dalje oslanjaju na rasterizaciju.
I to nas dovodi do vrlo bitne činjenice o implementaciji ove tehnike u moderne igre – koristi se hibridni pristup u kojem se većina grafike (barem za sada) i dalje renderira klasično, dok se precizniji ray tracing koristi za pojedine efekte u kojima najviše dolazi do izražaja. Konkretno, to su u većini slučajeva – refleksije, sjene, ambijentalna okluzija i globalno osvjetljenje.
Visoki hardverski zahtjevi čak i te hibridne implementacije ray tracing efekata stvorili su plodno tlo za razvoj još bržeg hardvera. Nasljednik arhitekture Turing je arhitektura Ampere, inkarnirana na tržištu u obliku grafičkih kartica iz serije GeForce RTX 30. Nove kartice lansirane su krajem prošle godine, donijele su sa sobom ne samo osjetno više rasterizacijske performanse već i novu implementaciju RTX tehnologije, s do 1,7 puta bržim RT jezgrama koje odrađuju ray tracing izračune. Jedna od najpoželjnijih kartica nove generacije zasigurno je i Asusova ROG Strix Gaming 3070 OC Edition, koja nam je poslužila za demonstraciju efekata koja nudi ova tehnologija. RTX 3070 GPU na kojem je temeljena u sebi ima 5.888 CUDA jezgri i 46 RT jezgre 2. generacije.
I dok su ranije u igrama najčešće bile prisutni samo pojedini efekti izvedeni ray tracingom, moderne igre podržavaju više njih ili čak sve, kao kod mega-popularne mrežne pucačine Fortnite koja je nadogradnju na RTX grafiku dobila prošle godine. Neki od naslova koji najbolje izgledaju u kombinaciji s hardverskim ray tracingom su Control, Cyberpunk 2077 i Metro Exodus Enhanced Edition. Poboljšana inačica igre Metro Exodus vjerojatno je najekstremniji primjer primjene hardverskog ray tracinga budući da je kompletan 3D engine prilagođen izvođenju na RT-kompatibilnom hardveru do te mjere da se igra ni ne može izvoditi na starijim grafičkim karticama koje ne podržavaju ray tracing. Podršku za ray tracing dobili su i neki stariji naslovi poput Minecrafta ili World of Warcrafta.
Usprkos snažnom hardveru, visoki zahtjevi hibridnog ray tracinga stvorili su potrebu za stvaranjem novih metoda za ubrzavanje performansi u igrama. Najmodernija takva metoda je DLSS, što je skraćenica od Deep Learning Super Sampling. Ova tehnologija integralna je za postizanje optimalnih performansi prilikom korištenja ray tracing efekata na GeForce karticama, no o tome detaljnije neki drugi put.