虛擬現(xiàn)實(shí)技術(shù)的未來(lái)發(fā)展將會(huì)面臨哪些挑戰(zhàn)
掃描二維碼
隨時(shí)隨地手機(jī)看文章
(文章來(lái)源:動(dòng)點(diǎn)科技)
無(wú)論是虛擬現(xiàn)實(shí)還是混合現(xiàn)實(shí),要為任何一個(gè)“現(xiàn)實(shí)”開(kāi)發(fā)內(nèi)容,你需要的不僅僅只是一個(gè)優(yōu)秀的開(kāi)發(fā)平臺(tái)。對(duì)于熟悉開(kāi)發(fā)傳統(tǒng)屏幕3D環(huán)境的開(kāi)發(fā)者而言,VR和MR在性能,用戶體驗(yàn),熱量和續(xù)航管理,以及調(diào)試方面提出了獨(dú)特的挑戰(zhàn)。在今天這篇高通博文中,我們將探討這一系列的挑戰(zhàn),從而幫助你步入沉浸式虛擬現(xiàn)實(shí)的開(kāi)發(fā)世界。以下是映維網(wǎng)的具體整理:
1. 渲染與性能。如果在VR設(shè)備上渲染虛擬世界聽(tīng)起來(lái)令人生畏,你可以放心,因?yàn)槟憧梢猿浞掷矛F(xiàn)有的大部分3D渲染知識(shí)。幾何圖像和對(duì)象剔除,網(wǎng)格簡(jiǎn)化,以及通過(guò)深度緩沖和模板緩沖等機(jī)制避免過(guò)度繪制,這只是可以應(yīng)用于VR的部分基本3D渲染技術(shù)而已。
VR和3D渲染的主要區(qū)別在于設(shè)備本身。例如,VR頭顯需要承擔(dān)比傳統(tǒng)平面屏幕更多的責(zé)任。它需要檢測(cè)用戶的運(yùn)動(dòng)(以及實(shí)現(xiàn)眼動(dòng)追蹤),執(zhí)行渲染,并且協(xié)調(diào)兩者以提供逼真的虛擬視圖,同時(shí)反映出如同真實(shí)世界般的細(xì)節(jié)與響應(yīng)水平。VR設(shè)備基本上是圍繞用戶眼睛創(chuàng)建一個(gè)視口,其視圖相對(duì)較小,在正確的位置能提供合適的細(xì)節(jié)級(jí)別。
這最好是通過(guò)為眼睛的不同部分渲染不同級(jí)別的細(xì)節(jié)來(lái)實(shí)現(xiàn),這一過(guò)程稱(chēng)為“注視點(diǎn)渲染”。注視點(diǎn)渲染可以是靜態(tài),其中注視點(diǎn)每個(gè)區(qū)域的細(xì)節(jié)水平保持固定;注視點(diǎn)渲染同樣可以是動(dòng)態(tài),其中細(xì)節(jié)水平會(huì)出現(xiàn)變化。在某些系統(tǒng)上,這種優(yōu)化可以令渲染性能提高20%,而對(duì)于某些API,這一切只需對(duì)幾行代碼進(jìn)行調(diào)整。
2. UX設(shè)計(jì)。高質(zhì)量的沉浸式VR對(duì)用戶和系統(tǒng)都可以是十分“高強(qiáng)度”。一般而言,你應(yīng)該瞄準(zhǔn)“一口大小”的簡(jiǎn)短體驗(yàn),有部分開(kāi)發(fā)者就認(rèn)為5分鐘是理想的時(shí)間長(zhǎng)度。對(duì)性能要求苛刻的情景通常需要你高負(fù)荷運(yùn)行,而要求較低的場(chǎng)景則允許設(shè)備和用戶稍稍放松。為了適應(yīng)這種情況,游戲/應(yīng)用設(shè)計(jì)師應(yīng)該圍繞較小持續(xù)時(shí)間的體驗(yàn)來(lái)規(guī)劃內(nèi)容,故事情節(jié)和虛擬環(huán)境。
另一個(gè)主要考量因素是將大型虛擬空間映射至可用的物理空間。當(dāng)前的VR要求用戶在可能小于虛擬空間的物理空間內(nèi)移動(dòng),而系統(tǒng)主要是通過(guò)各種運(yùn)動(dòng)傳感器和動(dòng)捕裝置捕捉用戶運(yùn)動(dòng)。對(duì)于涵蓋旋轉(zhuǎn)和平移的六自由度運(yùn)動(dòng),建議你首先在游戲或應(yīng)用程序中預(yù)先警告用戶有關(guān)這類(lèi)物理空間限制的信息。
處理映射還有很多選項(xiàng),但一種簡(jiǎn)單的方法是計(jì)算可用的物理空間,然后在用戶在導(dǎo)航期間接近邊界時(shí)淡入黑色。你同時(shí)可以顯示說(shuō)明用戶已到達(dá)邊界的屏幕元素(如消息)。
最后的考慮涉及暈動(dòng)癥,當(dāng)渲染視圖與用戶動(dòng)作不同步時(shí),用戶可能會(huì)遭遇暈動(dòng)癥的影響。所以為了確保用戶的舒適度,渲染性能在VR開(kāi)發(fā)中必不可少,同時(shí)建議你將渲染性能提升至90FPS或以上。圍繞上面提到的“一口大小”體驗(yàn)進(jìn)行開(kāi)發(fā)也會(huì)有所幫助。
3. 設(shè)備發(fā)熱與電量管理。電量消耗,以及因渲染和計(jì)算操作產(chǎn)生的熱量是所有移動(dòng)和可穿戴設(shè)備都需要面對(duì)的問(wèn)題,特別是對(duì)于佩戴在用戶面部的VR頭顯。因此,在游戲/應(yīng)用程序的整個(gè)開(kāi)發(fā)周期中監(jiān)控這一方面至關(guān)重要。你可以使用各種工具來(lái)分析熱數(shù)據(jù)和其他資源,如GPU和CPU功率頻率。
4. 調(diào)試。在VR頭顯等設(shè)備上調(diào)試游戲/應(yīng)用程序可能會(huì)影響你查看PC屏幕,以及通過(guò)鍵盤(pán)調(diào)用調(diào)試命令。要克服問(wèn)題,你需要在項(xiàng)目的早期進(jìn)行一定的創(chuàng)意規(guī)劃,下面的想法或許能給你提供一定的靈感:(1)將調(diào)試信息添加到視口中。但請(qǐng)注意,VR頭顯的“屏幕空間”很少,因此疊加層難以閱讀。但是,像FPS計(jì)數(shù)器和溫度這樣的簡(jiǎn)單指標(biāo)應(yīng)該沒(méi)有什么問(wèn)題。
(2)使用Snapdragon Profiler的實(shí)時(shí)捕捉功能可支持你在游戲/應(yīng)用程序中記錄指標(biāo)。(3)請(qǐng)咨詢?cè)O(shè)備的第三方/OEM廠商,了解他們?yōu)檎{(diào)試提供的工具。(4)建立替代的移動(dòng)機(jī)制,例如在開(kāi)發(fā)過(guò)程中使用游戲手柄。(5)構(gòu)建可在PC上查看的游戲/應(yīng)用附加視口(近似于頭顯視圖)。然后,你可以使用替代游戲機(jī)制,又或者是請(qǐng)求其他開(kāi)發(fā)者使用頭顯,而你則專(zhuān)注于調(diào)試。(6)將遠(yuǎn)程傳送等“作弊方法”添加到另一個(gè)虛擬空間,這樣你在開(kāi)發(fā)過(guò)程中就能快速導(dǎo)航至環(huán)境的不同部分。
? ? ? ?