Reprojekcija i asinkroni spacewarp – metode za hardverski ekonomičniji VR

Virtualna stvarnost i pripadajući uređaji (HTC Vive, Oculus Rift i PlayStation VR) tek su odnedavno s nama. Korisnicima je poznato da VR renderiranje zahtijeva mnogo računalne snage. Kad imamo slučaj da je hardver nedovoljno jak, tu su i novi „trikovi“ koji omogućuju ugodniji i fluidniji prikaz.

U vrijeme kada se pojavila konačna verzija Oculus Rifta namijenjena tržištu, preporučena specifikacija računala za besprijekoran VR zahtijevala je Intel Core i5 4590 i Nvidia GTX 970 grafički čip, odnosno procesor i grafički čip ekvivalentne jakosti. Ispod navedenog minimuma niste mogli očekivati ugodan VR, frameovi (sličice) bi se gubile i na taj način bi korištenje VR naočala uzrokovalo vrtoglavicu i potencijalno glavobolju/mučninu.

Podsjetnik na mnogima još uvijek velike zahtjeve za VR. U međuvremenu, iako su preporučeni zahtjevi praktički ostali isti, novije tehnike renderiranja i trikovi pomažu u slučajevima računala koja su hardverski ispod navedenih zahtjeva.

Kako bi pribjegla rješavanju ovog problema, tvrtka Oculus je još u ožujku predstavila asinkroni timewarp, tehniku renderiranja koja smanjuje latenciju i reducira neželjene artefakte (vibraciju i podrhtavanje slike) na način da se frameovi prerenderiraju prije samog prikaza. Ova metoda je prikladna za interpoliranje od točke bilo kojeg framea (poželjno onog koji je tim bliže brojki od 90) do poželjnog frameratea koji za Oculus Rift iznosi 90 frameova iliti sličica u sekundi. Primjerice, u igri se dogodi masivna eksplozija i broj sličica nenadano padne na 70, asinkroni timewarp pobrinut će se da taj prekid gotovo i ne osjetimo zbog toga jer smo imali „rezervne“ frameove koji su prikaz slike održali na stabilnih 90 frameova.

Ovakav pad frameratea znao se događati u aplikacijama na Oculus Riftu u otprilike 11% slučajeva, neovisno o snazi računala. No, kao i slični trikovi za umjetnu prilagodbu prikaza, asinkroni timewarp ima manu, izglađivanje frameova nije savršeno, pogotovo u slučaju da se korisnik u VR igri kreće i aktivno mijenja smjer kretanja.

U isto vrijeme HTC i Valve su imali relativno bolje rješenje. HTC Vive je putem Steam VR programa i sučelja koristio drugu tehniku interpolacije frameova, zvanu reprojekcija. Naime, ukoliko dođe do osjetnog pada frameratea i Steam VR Runtime to prepozna, utoliko se aktivira tehnika reprojekcije, umjesto intepolacije od točke nasumičnog frameratea kao u slučaju asinkronog timewarpa, igra će se biti „prisiljena“ na renderiranje u 45 frameova po sekundi, pri čemu će svaki svaki drugi frame biti „sintetički“, odnosno stvoren je na osnovu razlike prethodna generirana dva framea.

Steam VR reprojekcija je veoma glatka, no budući da je broj frameova zapravo nizak za pojmove VR-a, moguće je da dođe do situacije da animacije i fizika igre djeluju „čudnije“ u slučaju da su animacije zamišljene za pripadajućih 90 Hz odnosno frameova.

Kod slabijeg računala ne zaboravite omogućiti reprojekciju unutar Steam VR-a.

Sonyjev PlayStation VR također koristi svojevrsnu metodu Steam VR reprojekcije. Igre se mogu renderirati u 60 frameova po sekundi i bit će potom bezbolno reprojektirane u 120 frameova, odnosno prikladno za nativni prikaz u 120 Hz u slučaju PS VR ekrana. Iz istog razloga PS VR će unatoč nižoj rezoluciji biti gotovo savršeno glatke i neće toliko umarati oči.

PS VR je pribjegao metodi reprojekcije zbog očitih razloga. Postići izvornih 120 fps-a čak i u grafički nezahtjevnim PS VR igrama nije nimalo lak zadatak.

Naravno, na odgovor iz Oculusa nije trebalo dugo čekati. Ovotjedno predstavljeni asinkroni spacewarp nije ništa drugo nego reprojekcija nazvana na „fensi“ način. Valve i HTC su dosad bili korak dalje u odnosu na Oculus, no možemo reći da je Oculusov napredak dobar za cijelu VR industriju.

Razlog za to je ponajprije što je s asinkronim spacewarpom sada moguće dobiti relativno stabilnih i ugodnih 90 FPS-a u VR igrama i aplikacijama na prilično slabijem računalu, u prvom redu zahvaljujući asinkronom spacewarpu odnosno reprojekciji. Ipak, kao što je naglasio suosnivač Oculusa Brendan Iribe, ovo nije prava zamjena za stvarnih i nominalnih 90 frameova po sekundi koje renderira sposobnije računalo, ali će svakako pomoći u renderiranju kada računalo nije u mogućnosti postići stabilan framerate.

Kao što smo naveli u vijesti za Oculus Touch, sada je kao minimalnu konfiguraciju potrebno imati grafičku karticu u rangu Nvidije GTX 960, a od procesora Intel i3 6100 ili AMD-a FX 4350.

Potencijalno veća baza korisnika i niži zahtjevi za VR su dodatan vjetar u leđa Oculusa (također i programerske studije koji rade na igrama!), pa su na samom Oculus Connect ujedno predstavili i računalo proizvođača CyberPowerPC, ekvivalentne vrijednosti 500 dolara i spremno za korištenje s Oculus Riftom. U paketu s Oculus Riftom najavljena je i privlačna cijena od 1000 dolara, barem za zemlje višeg standarda kao što je SAD. Nema sumnje da je ovo ujedno i odgovor na financijski povoljniju ponudu PlayStation VR-a.

S obzirom da su sada svi glavni proizvođači na tržištu, bit će zanimljivo pratiti trend prihvaćanja VR-a, no isto tako možemo biti zadovoljni što tehnologija ide naprijed, u ovom kontekstu prilagođavajući se i optimizirajući VR softver, a samim time i hardver.