Komoly frissítést kínál az Oculus PC SDK 1.3-as verziója

Hosszú várakozás után végre elérkezett az idő, amikor leírhatjuk: az Oculus Rift hivatalosan is megjelent. Ez természetesen eleve örömteli hír, még akkor is, ha az idei CES óta tudható volt a start pillanata. Érdekesebb adat azonban, hogy elérhetővé vált az Oculus PC SDK 1.3-as verziója, amelyre természetesen kiadásra került egy futtatási környezet is. Utóbbi bevezeti az egyik legfontosabb funkciót, vagyis az aszinkron timewarpot, amely nagymértékben csökkentheti az apróbb akadások lehetőségét a virtuális valóságon belül.

Hirdetés

Az aszinkron timewarp funkció a Windows 7, 8, 8.1 és 10 operációs rendszereken működik, de a Microsoft külön figyelt erre a problémára, így a 10586.164-es Windows 10-es frissítésbe bekerült egy speciális optimalizálás az Oculus csomagjához, így a legjobb élményt ez az operációs rendszer kínálja a virtuális valóság iránt érdeklődő felhasználók számára. Az Oculus mérései szerint aszinkron timewarp nélkül a kiadásra kerülő címek egy részénél a számolt képkockák 5%-a veszett oda a teszten, vagy inkább úgy érdemes fogalmazni, hogy lekésték a vertikális szinkronizációt miatt szinkronablakot. Az aszinkron timewarp bevezetésével azonban a kritikus esetek egy részét sikerült kivédeni, így a játékok folyamatosabban futnak.

A második képkocka késett volna, de az aszinkron timewarp megmentette a helyzetet
A második képkocka késett volna, de az aszinkron timewarp megmentette a helyzetet [+]

A fejlesztők számára ez azért is jó hír, mert a kód módosítására nincs szükség, egyszerűen be kell építeni az Oculus PC SDK 1.3-as verziójának támogatását, és az aszinkron timewarp automatikusan üzemképessé válik. Maga a funkció egyébként tesztelési céllal kikapcsolható, de az Oculus a véglegesen kiadott játékok esetében megköveteli a használatát.

Az Oculus újítását az NVIDIA és az AMD legfrissebb meghajtói is támogatják, de eltérő implementációval. Az NVIDIA VRWorks rendszere az NVAPI nevű szervizkönyvtáron keresztül működtethető a magas prioritású kontextusok bevetésével. A vállalat túlságosan nem megy bele a részletekbe, de gyakorlatilag arról van szó, hogy a rendszer elindítja az aszinkron timewarpot, amely egy kontextusváltást eredményez a grafikus vezérlőn, majd a lehető leggyorsabban meg kell oldani a számítást, mivel vissza kell adni az erőforrást a következő képkocka számításához. A soros feldolgozási modell miatt itt a programon belül is szükséges némi optimalizálás, így fontos követni az NVIDIA ajánlásait.

Az AMD implementációja eltérő, mivel eleve más lehetőségeken keresztül dolgoznak. A vállalat a saját szervizkönyvtára helyett a Mantle API-t használja a LiquidVR-en keresztül, így többek között szinte teljesen lecserélik a program által használt grafikus API input assembler lépcsőjét. Ez jóval több trükközésre ad lehetőséget, többek között biztosítja az aszinkron shaderek alkalmazását gyakorlatilag bármilyen grafikus API mellett.


[+]

Az AMD kétféle módot készített. Az alap aszinkron shader mód az első generációs GCN architektúrával érhető el, és ilyen formában az aszinkron timewarp számítása a képkockák számításával párhuzamosan történik meg. Ennél hatékonyabb mód a QRQ-val (Quick Response Queue) kiegészített aszinkron shader, amely a második és harmadik generációs GCN architektúrával működik. Ilyenkor az aszinkron timewarp nagyobb prioritással történik, de a grafikai számítások sem szünetelnek, így megmarad a párhuzamos munkavégzés is.

Azóta történt

Előzmények

Hirdetés