編譯/VR陀螺
Meta在GDC現(xiàn)場(chǎng)分享了Quest的開發(fā)心得和實(shí)踐經(jīng)驗(yàn),包括提供優(yōu)化體驗(yàn)的一些工具,同時(shí)還介紹了如何利用App Lab作為業(yè)務(wù)及營(yíng)銷工具。以下為VR陀螺提煉編譯的重點(diǎn)內(nèi)容。
充分利用Meta Quest的魔力
為移動(dòng)沉浸式頭顯制作游戲有什么不同?本·沃克(Ben Walker)分享了他多年來(lái)幫助開發(fā)者在Meta Quest上發(fā)布體驗(yàn)的指導(dǎo)意見。一個(gè)重要的考慮因素,也是Quest與PC或游戲機(jī)開發(fā)的不同之處在于,我們的頭顯是一種電池供電的VR和MR設(shè)備。雖然這似乎顯而易見,但仍有許多架構(gòu)方面的考慮因素需要考慮,這些因素會(huì)影響到?jīng)Q定為Quest制作體驗(yàn)的每個(gè)人。
Meta Quest 3的大部分電池電量都用于運(yùn)行CPU和GPU。我們有一個(gè)等級(jí)系統(tǒng),等級(jí)越高,時(shí)鐘速度越快。對(duì)于大多數(shù)開發(fā)人員來(lái)說(shuō),如果沒(méi)有充分利用CPU或 GPU,我們建議暫時(shí)降低應(yīng)用程序的時(shí)鐘速度。這推動(dòng)了零和框架的理念:您必須做出取舍,才能以最大能力運(yùn)行。應(yīng)用程序中嚴(yán)重依賴CPU或GPU的組件或功能就是我們認(rèn)為的“昂貴”功能。其中最值得注意的是穿透功能(Passthrough)。
穿透不僅僅是攝像頭的視頻饋送。穿透功能不僅能減少模擬器暈機(jī)現(xiàn)象,還能利用手部追蹤功能。其目的是使用戶手部的穿透視圖與現(xiàn)實(shí)保持一致。正如下面的GIF所示,用戶眼睛和攝像頭之間幾厘米的位置差異會(huì)極大地影響手在用戶眼睛(黑色)和攝像頭(紅色)中的顯示位置。
圖源:Meta
如果這些視圖沒(méi)有對(duì)齊,穿透式傳輸就會(huì)破壞你的本體感覺,也就是對(duì)肢體位置的無(wú)意識(shí)感知。這對(duì)于那些需要接住拋出的球或在游戲中快速指向一個(gè)小按鈕的設(shè)計(jì)體驗(yàn)來(lái)說(shuō)非常重要。即使您不打算使用手部追蹤功能,Quest 3中的這一組件也會(huì)使您所持的控制器(如穿透圖所示)與游戲中的控制器呈現(xiàn)一致。
值得注意的是,在Quest 3中,我們是在整個(gè)應(yīng)用程序渲染完成后才添加穿透功能的。這樣做是為了安全起見,使應(yīng)用程序無(wú)法存儲(chǔ)用戶環(huán)境的照片,同時(shí)也是為了優(yōu)化延遲。其他應(yīng)用程序可以添加到用戶看到的最終幀中。您可以在右側(cè)看到OVR Metrics Tool,這是我們的開發(fā)者HUD,可以顯示幀率等開發(fā)者統(tǒng)計(jì)數(shù)據(jù)。
圖源:Meta
合成器
將應(yīng)用程序提交的幀圖像、穿透攝像頭和其他提交幀圖像的應(yīng)用程序(如OVR Metrics Tool或系統(tǒng)菜單)的渲染圖像組合在一起的系統(tǒng)稱為“合成器”。合成器的工作之一是將不同運(yùn)行進(jìn)程提交的圖層堆疊在一起,這些圖層可能以不同的幀速率和分辨率提交。合成器的另一項(xiàng)工作是將這些圖像渲染到屏幕上。
發(fā)送到屏幕上的圖像會(huì)發(fā)生桶形失真,這種失真會(huì)被鏡頭中的枕形失真抵消。這樣,我們就可以使用更簡(jiǎn)單的鏡頭,并在屏幕中心顯示更多像素;這是一個(gè)真正的雙贏方案。Quest 3每只眼睛有一個(gè)屏幕,屏幕隨鏡頭移動(dòng),因此瞳距不會(huì)影響我們?cè)谄聊簧系某尸F(xiàn)。這一點(diǎn)很重要,因?yàn)楫?dāng)您獲取一些文字的源紋理,然后將其渲染到場(chǎng)景中的世界菜單或?qū)υ捒蛏?,再由合成器?duì)場(chǎng)景進(jìn)行扭曲時(shí),變換和重新渲染的過(guò)程是完全相同的,而且會(huì)應(yīng)用相同的模糊量。
如何解決這個(gè)問(wèn)題?其實(shí)只有一個(gè)辦法:您必須將從輸入紋理到世界渲染的變換,以及從世界渲染到鏡頭扭曲輸出的變換合并為一個(gè)只采樣一次的變換。如果您不確定應(yīng)用的文本質(zhì)量,請(qǐng)?jiān)儐?wèn)您的文本是否與內(nèi)置應(yīng)用(如我們的應(yīng)用商店)一樣易讀。如果您要制作一個(gè)用戶界面,并且要在該用戶界面中使用超過(guò)一句話的文字,我們建議您將該用戶界面放在合成器層上。
目標(biāo)幀速率和應(yīng)用程序空間扭曲
我們經(jīng)常聽到開發(fā)人員為在Quest 3上無(wú)法達(dá)到目標(biāo)幀率而苦惱。正如我們?cè)陂_頭提到的,重要的是要記住(并在設(shè)計(jì)時(shí)考慮到這一點(diǎn)),Quest 3是由電池供電的,其中大部分電力用于運(yùn)行CPU和GPU。
這種架構(gòu)的一些結(jié)果是,額外的渲染通道成本更高。Unity和Unreal中的許多系統(tǒng)——模糊、光暈、HDR、實(shí)時(shí)陰影、延遲渲染——實(shí)際上都是額外的渲染通道。雖然Quest支持這些系統(tǒng),但您為其支付的額外成本意味著您在選擇渲染通行證時(shí)應(yīng)比Unity和Unreal所建議的花費(fèi)更多的心思和精力。
我們的一些重度渲染游戲(如《刺客信條Nexus VR》)使用了我們提供的名為Application SpaceWarp的系統(tǒng)。其原理很簡(jiǎn)單:Quest不會(huì)每隔幾毫秒渲染一幀,而是每隔一幀合成一幀,讓您有兩倍的時(shí)間生成幀。您的CPU和GPU可以有雙倍的周期進(jìn)行計(jì)算,為用戶渲染出令人難以置信的效果。
使用Application SpaceWarp時(shí)也要考慮一些不利因素。您必須生成運(yùn)動(dòng)矢量,這可能意味著要修改游戲中使用的每種材質(zhì),以支持渲染運(yùn)動(dòng)矢量。此外,由于Application SpaceWarp生成的中間幀只支持單個(gè)像素向一個(gè)方向移動(dòng),因此它也不能很好地與透明度配合使用。此外,快速運(yùn)動(dòng)還會(huì)造成偽影。例如,如果您拿著劍或揮舞著劍,而劍的移動(dòng)速度非??欤敲催@種類型的游戲在使用Application SpaceWarp時(shí)就會(huì)出現(xiàn)偽像。它還會(huì)消耗部分幀時(shí)間,因此生成運(yùn)動(dòng)矢量預(yù)計(jì)會(huì)消耗30%的新幀時(shí)間。
幫助開發(fā)的關(guān)鍵功能
雖然我們?cè)赒uest 3上討論的這兩項(xiàng)功能增添了許多魔力,但它們非常密集,需要對(duì)VR的物理現(xiàn)實(shí)有深入的了解。還有其他一些功能也能幫助Quest 3的開發(fā)。
我們從開發(fā)者那里聽說(shuō),許多游戲,比如任何使用混合現(xiàn)實(shí)或手部追蹤的游戲,都只能在頭顯中進(jìn)行原生運(yùn)行測(cè)試。我們還聽說(shuō),創(chuàng)建Android版本、將其部署到頭顯、戴上頭顯并測(cè)試更改所需的時(shí)間太長(zhǎng),會(huì)拖慢迭代時(shí)間。為了解決這個(gè)問(wèn)題,我們創(chuàng)建了Meta XR模擬器,它集成了Unity或Unreal引擎和本地引擎。它位于播放編輯器功能之上。
圖源:Meta
每一代Quest推出的控制器都具有不同的觸覺能力。Quest 2的觸覺馬達(dá)只能在較窄的頻段工作。Quest 3的觸覺電機(jī)要好得多,能觸及更多頻率和振幅。Quest Pro配備了與Quest 3相同的主觸覺電機(jī),并在拇指桿和食指觸發(fā)器上配備了額外的觸覺電機(jī),用于局部交互反饋。
您可以使用Haptics Studio來(lái)處理這些信息。Haptics Studio的主要目標(biāo)是將音頻文件一鍵轉(zhuǎn)換為觸覺文件,并盡可能利用每個(gè)控制器的最佳資源進(jìn)行播放。它還有一個(gè)與耳機(jī)連接的系統(tǒng),可以實(shí)時(shí)調(diào)整觸覺效果,在電腦上按下播放鍵,控制器就會(huì)執(zhí)行正在進(jìn)行的觸覺效果。
我們還擁有自己版本的RenderDoc,這是一款用于調(diào)試幀如何在GPU上渲染的流行工具。這款應(yīng)用讓連接和捕捉Quest的幀變得簡(jiǎn)單,讓您更深入地了解標(biāo)題是如何生成幀的。
下一步工作:用心推出您的應(yīng)用程序
我們已經(jīng)介紹了構(gòu)建過(guò)程中的大量?jī)?yōu)化措施,但現(xiàn)在該怎么辦呢?我們與來(lái)自Beyond Frames的Maeva Sponbergs舉辦了一場(chǎng)演講,分享了一些商業(yè)和營(yíng)銷方面的最佳實(shí)踐,探討如何利用App Lab為自己的成功做好準(zhǔn)備。
弄清楚誰(shuí)是您的受眾可能比應(yīng)用程序在哪里可用更重要。在Steam、Meta Quest Store或App Store等平臺(tái)上有如此之多的應(yīng)用程序,脫穎而出變得越來(lái)越困難。您需要一種不僅能吸引眼球,而且能吸引更多受眾的體驗(yàn)。
圖源:Meta
如果您正在考慮發(fā)布您的應(yīng)用程序,可以考慮從App Lab開始,讓您的應(yīng)用程序提前發(fā)布。這是一個(gè)絕佳的機(jī)會(huì),讓您在正式發(fā)布前對(duì)體驗(yàn)進(jìn)行微調(diào),并完善目標(biāo)定位。
帶著明確的目的進(jìn)入App Lab。這個(gè)平臺(tái)不僅是一個(gè)發(fā)布平臺(tái),還是一個(gè)磨練您的游戲的絕佳車間。從微調(diào)功能和設(shè)計(jì)元素,到建立一個(gè)參與并提供反饋的社區(qū),App Lab是您的沙盒,也是您開始旅程的好地方。
最棒的是什么?App Lab提供開放和封閉兩種測(cè)試環(huán)境。這意味著您可以靈活決定收集反饋的方式和時(shí)間。要充分利用這個(gè)機(jī)會(huì)與受眾互動(dòng),讓他們對(duì)游戲的發(fā)展有發(fā)言權(quán)。在App Lab上發(fā)現(xiàn)挑戰(zhàn)是什么?您可能遇到的主要障礙是如何讓您的游戲受到關(guān)注。您需要從一開始就進(jìn)行戰(zhàn)略規(guī)劃,確保人們能找到您的游戲頁(yè)面。以下是一份簡(jiǎn)單的清單,可確保您走在正確的道路上:
首先,了解您的目標(biāo)受眾。他們是尋求下一個(gè)挑戰(zhàn)的謎題愛好者嗎?故事追求者希望進(jìn)入另一個(gè)世界?動(dòng)作游戲愛好者渴望快速、激烈的比賽?確定受眾至關(guān)重要,因?yàn)檫@將為所有后續(xù)步驟提供依據(jù)。
接下來(lái),找到您的故事。您想在營(yíng)銷節(jié)拍中編織什么樣的敘事,如何才能使其適合你的受眾?如何將這個(gè)故事分解成引人入勝、一口一個(gè)的內(nèi)容,從而推動(dòng)未來(lái)的創(chuàng)作?無(wú)論是分享游戲功能和更新,還是慶祝節(jié)日,聊天總是有理由的——您只需要正確的鉤子、恰當(dāng)?shù)恼Z(yǔ)言和周到的敘述計(jì)劃。
掌握社交媒體很重要。盡早確定您的賬號(hào),定期發(fā)布吸引人的內(nèi)容。了解每個(gè)平臺(tái)的特殊性,使用標(biāo)簽和關(guān)鍵詞來(lái)獲得算法的青睞。計(jì)劃好未來(lái)三個(gè)月的內(nèi)容日程表,以確保您的信息傳遞步入正軌,并將內(nèi)容捕捉作為開發(fā)流程的一部分。
讓受眾發(fā)出聲音。在開始發(fā)布內(nèi)容之前,先建立一個(gè)Discord服務(wù)器,并做好參與的準(zhǔn)備。
對(duì)創(chuàng)作者采取戰(zhàn)略性方法。尋找真正熱愛您正在制作的游戲類型的創(chuàng)作者。從中小型有影響力的人開始,重點(diǎn)建立有意義的關(guān)系,推動(dòng)反饋。
始終以批判的眼光看待反饋。一些好評(píng)固然很好,但要確保您專注于增加受眾,而不僅僅是產(chǎn)生積極的反饋。將積極反饋?zhàn)鳛閴|腳石,而不是舒適區(qū),以評(píng)估您所提供的服務(wù)是否符合受眾的期望。在早期支持者的幫助下擴(kuò)大您的影響力,以驗(yàn)證您的感受。只有當(dāng)您愿意采取行動(dòng)時(shí),反饋才是金子。既要忠實(shí)于游戲的核心,又要樂(lè)于根據(jù)玩家的意見做出改變,這就需要找到兩者之間的平衡點(diǎn)。
擁抱旅程,在整個(gè)開發(fā)過(guò)程中努力發(fā)掘并吸引受眾,這樣才能在努力優(yōu)化Meta Quest 3之后成功發(fā)布。
原文地址:https://developer.oculus.com/blog/optimizing-for-success-meta-quest-3-gdc/
投稿/爆料:tougao@youxituoluo.com
稿件/商務(wù)合作: 六六(微信 13138755620)
加入行業(yè)交流群:六六(微信 13138755620)
元宇宙數(shù)字產(chǎn)業(yè)服務(wù)平臺(tái)
下載「陀螺科技」APP,獲取前沿深度元宇宙訊息