Hlavní navigace

AMD představilo LiquidVR, technologie pro virtuální realitu na kartách Radeon

4. 3. 2015

Sdílet

 Autor: Redakce

Asi si ještě vzpomenete, že při podzimním uvedení grafik na bázi čipu GM204 Nvidia přišla také s určitým novinkami v ovladačích, zaměřenými na použití brýlí pro virtuální realitu. Technologie se stejným účelem nyní na konferenci GDC 2015 představilo i AMD. Balíček jeho opatření na podporu virtuální reality nese jméno LiquidVR a měl by zajistit, že až se zařízení typu Oculus Rift konečně objeví v praxi, budou na ně Radeony připravené.

LiquidVR má podle AMD za cíl komfort, kvalitu obsahu a kompatibilitu. Nejde o nějaké proprietární vlastní řešení virtuální reality, ale o technologie, přispívající do otevřeného ekosystému, tvořenému brýlemi různých firem. Výrobu periférií samotných tedy AMD přenechá kompetentnějším hráčům jako jsou Oculus a další (tento týden odhalilo 3D headset například HTC) a bude se soustředit jen na to, co pro kvalitní virtuální realitu musí dělat GPU.

Prezentace AMD k technologii LiquidVR

 

Asynchronní postprocessing pro zahlazení latence

Lze říci, že ústředním problémem virtuální reality je momentálně odezva vykreslování. VR s náhlavními systémy totiž zpětnovazebně reaguje na pohyby hlavy, čímž je ovládán úhel pohledu v simulaci. Tato zpětná vazba ale nemilosrdně odhaluje jakékoliv zpoždění mezi vstupním pohybem a reakcí na obrazovce. Aby tedy simulace byla snesitelná, musí být odezva co nejkratší, o což se s LiquidVR AMD také snaží.

Zřejmě nejdůležitějším trikem pro zrychlení reakční doby bude technika Asynchronous Shaders. Jedná se o stejný koncept, jaký Nvidia nazvala Asynchronous Warp – k tomu je asi dobré říct, že nejde o nějaké kopírování, neboť obě firmy v podstatě jen dělají to, co po nich požadují výrobci headsetů (zde hlavně Oculus).

Prezentace AMD k technologii LiquidVR
Asynchronous Shaders aplikují poslední změny pozice hlavy na již rozpracované snímky, čímž snižují dobu odezvy na pohyb

Jde v podstatě o řešení problému, že vykreslení snímku chvíli trvá, a tudíž jeho výsledek nevyhnutelně přichází vždy pozdě, protože uživatel se mezitím nejspíš opět pohnul a právě dokončená scéna je tedy už zastaralá. Tento neduh je ale možné částečně zamaskovat, pokud obraz adekvátně posuneme či pozměníme. Jak Asynchronosu Warp, tak Asynchronous Shaders tedy po skončení výpočtu vyhodnotí aktuální vstupy, které mezitím přišly ze senzorů a snímek na jejich základě poupraví některou z dostupných technik implementovaných pomocí shaderů.

Prezentace AMD k technologii LiquidVR

Na tomto místě se u AMD uplatňuje další technika, nazvaná Latest Data Latch. Ta tvoří ono rozhraní, které komunikuje aktuální stav uživatele (respektive poslední data ze senzorů) do GPU, aby to mohlo kompenzovat vypočítávané snímky před jejich odesláním k samotnému zobrazení. Tento asynchronní postprocessing může běžet paralelně s vykreslováním následujícího snímku, takže jej nezdržuje. Efektivní latence zobrazení by se měla podstatně snížit, neboť po pohybu uživatele přijde reakce minimálně o snímek dříve a může být uplatněna už na obraz, který byl v době pohybu už rozpracován.

Prezentace AMD k technologii LiquidVR
Latest Data Latch dává GPU informace o nejčerstvějších změnách v poloze hlavy

 

CrossFire, to pravé pro VR: Affinity Multi-GPU

S problémem latencí souvisí i použití více GPU k vykreslování. To je při typickém použití metody AFR zdroj zpoždění, jenže na druhou stranou pro dosažení vysokých snímkových frekvencí, které VR vyžaduje, může být multi-GPU žádoucí až nutné (je asi jasné, že výrobci jsou za určité opodstatnění jinak problematického CrossFire/SLI velmi rádi). AMD proto vyvíjí speciální metodu CrossFire pro použití s virtuální realitou, nazvanou Affinity Multi-GPU. Má snížit latence a samozřejmě také zvýšit celkový výkon.

Prezentace AMD k technologii LiquidVR
CrossFire má při výstupu na VR headset tu výhodu, že každé GPU může počítat separátně jeden úhel

Affinity Multi-GPU bude spočívat v několika věcech. Za prvé AMD použije logicky se nabízející rozdělení obrazu na oba stereoskopické kanály. Pravé a levé oko tedy bude přiřazeno nezávislým GPU místo toho, aby se počítaly oba pohledy dohromady střídavě na jednom či druhém GPU. Tato metoda CrossFire je navíc poměrně jednoduchá a lehce implementovatelná. AMD ale zároveň přidává určité další optimalizace pro zvýšení výkonu. Vzhledem k tomu, že obě oči pozorují dosti podobnou scénu, je možné sdílet část práce na úrovni ovladače a snížit tak zátěž CPU.

Prezentace AMD k technologii LiquidVR
Ovladač by měl inteligentně využívat podobnosti mezi oběma úhly a uspořit část výpočtů

 

Direct-to-Display

Součástí systému LiquidVR má pak být ještě optimalizovaný výstup na monitor – respektive v tomto případě headset nebo 3D brýle. Technologie Direct-to-Display bude pro vykreslování obcházet operační systém a posílat data bez jeho asistence přímo zobrazovadlu. To má posloužit primárně pro další redukci latencí, neboť procedury Windows či jiného systému mohou zobrazení snímku zpozdit. Kromě toho je ale cílem zajistit větší uživatelské pohodlí. Headset se v OS nebude ukazovat jako monitor, což by mohlo vést k různým zmatkům na pracovní ploše, která s použitím stereoskopických náhlavních displejů nepočítá. Zároveň bude možné brýle vesele používat i na systému, který nemá pro VR technologie žádnou explicitní podporu.

Prezentace AMD k technologii LiquidVR
Výstup na brýle bude moci obcházet operační systém pro kratší odezvu

LiquidVR je v tuto chvíli ještě mladá technologie, takže do ovladačů jí to ještě bude chvíli trvat. SDK je v tuto chvíli ještě v apha fázi, nicméně vybraní partneři z řad vývojářů už jej mají v rukou a mohou na implementacích pracovat. Vzhledem k tomu, že nějaká širší dostupnost pokročilejších brýlí je ještě vzdálená, není zde zas takový spěch, čím dříve ale bude AMD připravené, tím lépe.

CS24

 

Zdroje: AMD, AnandTech