0
本文作者: 糖直銷-Orz | 2016-09-14 17:38 |
毫無疑問,英偉達(dá)在 GPU 上面是難逢敵手的。借助強(qiáng)勁的 GPU,它在需要巨大計算量以及圖形渲染的任何領(lǐng)域也大放異彩。在人工智能,智能駕駛領(lǐng)域英偉達(dá)更是翻云覆雨,更不用當(dāng)下另一個風(fēng)口——VR。
所以英偉達(dá)這次又把 GTC 從美利堅開到了北京,并且為 VR 單獨(dú)開辟了一個論壇。由于論壇的主題是「中國制造 2025 以及虛擬現(xiàn)實(shí)」,所以在大會上,我們更多聽到的是 VR 技術(shù)在工業(yè)級上的應(yīng)用。這些技術(shù)的運(yùn)用背后都有英偉達(dá)在圖形處理上的支持,尤其是專為 VR 開發(fā)者準(zhǔn)備的開發(fā)套件 VRWorks。說了那么多,這套開發(fā)工具到底有神奇之處?
VR 技術(shù)的興起之所以讓 PC 行業(yè)為之興奮,最主要的原因在于 VR 對于計算能力的要求要求比一般的游戲要更高。而這一部分的重任則主要是落在了 GPU 之上,但傳統(tǒng)的渲染方式——渲染整個畫面以及每一個細(xì)節(jié)顯然不適用于 VR 內(nèi)容。畢竟在 VR 設(shè)備上,GPU 需要在短時間內(nèi)渲染出左右眼不同的兩個畫面,并且需要隨時根據(jù)用戶頭部的方向調(diào)整渲染的內(nèi)容。
早先為了減輕眩暈感,英偉達(dá)在上一代 Maxwell 架構(gòu)上,曾經(jīng)公布過一項名為 Asynchronous Time Warp(異步時間扭曲)的技術(shù)。比如,在用戶沉浸在 VR 時會不自主進(jìn)行頭部的擺動。只有當(dāng)他停止動作后,眼睛看到的畫面與現(xiàn)實(shí)世界中停止動作后應(yīng)該看到的畫面相吻合,那么用戶才不至于產(chǎn)生不適感,才能更好地沉浸在 VR 世界里。
Asynchronous Time Warp 技術(shù)通過提前在屏幕刷新前準(zhǔn)備好用戶理應(yīng)看到的畫面,來提升畫面的流暢性。這一次英偉達(dá)則是依托于新的 Pascal 架構(gòu),在 VRWorks 套件中推出了另一項更進(jìn)一步提升體驗的技術(shù) Preemption——它的作用在于能夠更快,更早地啟動 Asynchronous Time Warp 技術(shù),生成更多的中間幀,畫面過渡更自然,讓最終呈現(xiàn)給用戶的畫面更貼近現(xiàn)實(shí),增加 VR 帶來的沉浸感。
如果說 Preemption 是 VRWorks 里提升用戶體驗的擔(dān)當(dāng),那么接下來幾項技術(shù)則是 GPU 減負(fù)擔(dān)當(dāng)。在說明接下來的幾項技術(shù)之前,我們先要了解顯卡在渲染 3D 圖形的大概步驟:首先 GPU 通過計算將 3D 圖形構(gòu)建好,然后再通過投影的方式將 3D 圖形投射到顯示器上,形成 2D 圖形。即使玩家配備了多個屏幕,他看到的畫面也只是單純地將一個投影拉長。如果玩家采用的環(huán)繞式的屏幕排布方式,那么畫面可能會扭曲變形。
這時候英偉達(dá)的另一項新技術(shù) Simultaneous Muti-Projection(多重同步投影技術(shù))就可以解決這個問題了——它的解決方案是分別針對不同朝向的物體,采用不同方向的「光源」進(jìn)行投射,這樣渲染物體就不會發(fā)生扭曲了?;谶@項技術(shù),英偉達(dá)拿出了 Single Pass Stereo 以及 Lens Matched Shading 這兩項技術(shù)。
GPU 運(yùn)用基于 Simultaneous Muti-Projection 的 Single Pass Stereo 技術(shù),根據(jù)左眼與右眼見到圖像視角的差別,僅需通過渲染出左眼所見的圖像,再稍微扭曲下渲染出左眼的圖像,即可得到右眼的圖像,無需進(jìn)行二次渲染。而 Lens Matched Shading 可以視為給 VR 渲染視圖添加了一個遮罩——這個遮罩的目的在于調(diào)整因為 VR 鏡片帶來的畸變。這樣一來,就不必每次渲染后再做一遍反畸變的調(diào)整。
說到沉浸感,一般人首先會想到的是無延遲又精細(xì)的畫面,這一方面也是諸多內(nèi)容開發(fā)者追求的,然而除了畫面之外,另一個至關(guān)重要的方面就是音效。試想一下,當(dāng)玩家沉浸在畫質(zhì)精良的虛擬世界中不可自拔之時,突然兩耳響起貧瘠的環(huán)境音樂,是不是很出戲?
對于音效的處理,大多數(shù)開發(fā)者的做法是直接改變音源聲音的大小,將「音響」直接對準(zhǔn)體驗者的耳朵。這樣的方法簡單粗暴,也能讓體驗者判斷音源的方位,但沉浸感不足——原因是,在現(xiàn)實(shí)生活中,我們聽見的聲音不僅僅只有從音源發(fā)出的,還有墻壁等物體反射后形成的另一波聲音。
英偉達(dá)推出的 VRWorks 套件對于這樣的情形有一套特定的解決方案——將原本用在圖形渲染上的「物理光效」運(yùn)用到了音效之上,構(gòu)建出一套適用于聲音反射的函數(shù)方程,以模擬聲波碰撞到不同材質(zhì)物體之上的反射音。
因為光線與聲音同樣都是屬于波的一種,GPU 也能處理這一類型的計算。然而,由于不同材質(zhì)物體對于聲波的反射與吸收的比例是不同的,并且還涉及到不同反射波的合成問題,所以開發(fā)者在使用這項技術(shù)的時候,需要與英偉達(dá)合作一起,調(diào)整相關(guān)參數(shù)。
VRWorks 套件固然對 GPU 性能提升與優(yōu)化有著莫大的幫助,但如果這套組件僅僅是英偉達(dá)一家獨(dú)自推動的技術(shù),那么對于開發(fā)者也沒有什么實(shí)際的用處。不過,無論是 Unity 還是 Unreal 哪一款開發(fā)引擎,都已經(jīng)宣布支持英偉達(dá)的 VRWorks。這一次 VR 開發(fā)者似乎真的拿到了一套趁手的開發(fā)利器。
雷峰網(wǎng)原創(chuàng)文章,未經(jīng)授權(quán)禁止轉(zhuǎn)載。詳情見轉(zhuǎn)載須知。