天天看點

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

作者:愛迪斯通

在Unity通用渲染管道(URP)上開發遊戲的優勢非常大,隻需對渲染設定做最小的改動,U就可以在各種平台上得到支援。這使得您的項目可以在各種平台上運作,從移動裝置到各大遊戲主機、PC,甚至各種VR裝置。

對于那些以前沒有為VR開發過遊戲的人來說,開發VR版遊戲可能會讓他們無從下手。無論是剛剛開始您的項目,還是已經在其他平台上釋出了一個現有的URP項目,我們将在本篇文章中詳細介紹在URP中添加VR支援的步驟,以便幫助您在多個VR平台上運作Unity通用渲染管道。

添加正确的包

每個VR Unity項目都需要XR插件管理包。這個包可以讓您輕松地為您想要建構的虛拟現實平台配置項目,從Meta Quest、Magic Leap到PlayStationVR2 (PS VR2)。

另一個有用的包是XR互動(XRI)工具包。這個包中的一些預置選項将減少您的設定時間,這些預置實作了大多數VR遊戲中常見的移動選項,比如瞬間移動,急速轉身等等。

要将這些包添加到您的項目中,請打開視窗菜單并單擊包管理器。在軟體包管理器視窗中,點選“軟體包:在項目中”下拉菜單以展開選項,然後點選“Unity系統資料庫”選項以使軟體包管理器列出所有可用的軟體包。

Unity支援很多包,是以可直接在包管理器視窗的搜尋欄中輸入“xr”來過濾清單,以便隻顯示特定于XR的包。接下來,單擊XR插件管理包,然後選擇Install按鈕将它添加到您的項目中。您可以按照同樣的過程添加XRI工具包。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

在軟體包管理器視窗中,單擊安裝按鈕安裝XR插件管理軟體包。

接下來,讓我們添加由XRI團隊提供的示例資産來幫助您開始。單擊包管理器中的XR Interaction Toolkit包,然後單擊包詳細資訊面闆中的Samples頁籤。然後,單擊“Starter Assets”旁邊的“Import”按鈕來添加資源,這将簡化VR行為和輸入動作的設定步驟。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

在Package Manager視窗中,單擊XR Interaction Toolkit包的Samples頁籤,然後單擊Starter資産下的Import按鈕,将這些資産添加到您的項目中。

安裝了這些包之後,您已經完成了一半以上的VR開發工作。

為項目中的特定平台啟用VR支援

接下來,您需要指定要瞄準哪些VR平台。為此,打開您的項目設定并單擊XR Plug-in Management頁籤(它包含在您安裝軟體包時)來檢視您可以為您的項目選擇的可用插件提供程式的清單。插件提供商是VR平台的另一個名稱。選擇一個選項,如Oculus或Open XR,Unity将安裝特定于該平台的軟體包。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

在“XR插件管理”視窗中,在“插件提供者”窗格中選擇您想要定位的平台。

一些XR平台在建構設定中使用Windows、Mac和Linux建構目标,但其他平台在不同的目标上運作。例如,PS VR2的建構需要将建構目标切換到PlayStation5 (PS5),而其他的則需要切換到Android或iOS。確定在開發過程中切換到正确的建構目标,這樣您就可以盡早發現任何重要的錯誤和警告。請記住,要為PS5開發遊戲,您必須注冊成為PlayStation開發者。

每個XR插件都提供驗證檢查,以確定您的項目被正确地配置為針對XR進行建構。請轉到項目設定視窗,然後單擊XR插件管理頁籤下的項目驗證頁籤,檢視是否有任何警告或錯誤需要處理。大多數檢查都可以通過“修複”按鈕來為您解決問題。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

在“項目驗證”視窗中,單擊要修複的問題旁邊的“修複”按鈕,或者單擊“全部修複”按鈕來解決找到的所有問題。

選擇了正确的插件提供程式後,您現在就可以開始建構您選擇的VR平台了。但是,您仍然需要将VR控件映射到您現有的玩家角色。這就是XRI工具包提供的啟動資産發揮作用的地方。

添加VR播放器控制器

在項目視窗中,進入Samples/XR Interaction Toolkit/2 . 3 . 2/Starter Assets/Prefabs檔案夾,然後将完整的XR Origin設定預置拖到場景中。這個預置預裝了您需要為您的玩家控制器配置VR輸入的所有元件。

預設有一個嵌套的XR原點預設,可以處理大多數VR控制器設定。它有兩個代表玩家左手和右手的遊戲對象,以及一個嵌套在相機偏移遊戲對象中的主相機,該相機偏移遊戲對象根據玩家是坐着還是站着來移動相機。由于完整的XR原點設定預置包括它自己的主相機,如果您已經有一個主相機對象在您的場景中,那麼確定禁用它,這樣您就不會有多個相機試圖同時渲染您的玩家的主視圖。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

将完整的XR原點設定預設拖到場景中。預設具有嵌套的子對象,将玩家的手和頭映射到特定的遊戲對象。

XRI工具包還附帶了一個輸入映射,将動作映射到常見的VR控制。這些控件在大多數VR平台上都是标準的,是以不需要額外的編碼來確定您的輸入在各種平台上被識别,包括Meta Quest,Magic Leap和PS VR2。確定您從您原來的玩家控制器複制并粘貼任何對遊戲狀态跟蹤重要的腳本到新添加的完整的XR原點設定預置。請随意将預設重命名為更容易記住的名稱,如VR FPS控制器。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

XR Origin預置使用XRI預設輸入動作映射來映射大多數VR平台上的常見互動。

XR Origin GameObject包含了很多元件,這些元件一開始可能會讓人很困惑。将XR Origin預設的XR Origin元件視為所有其他XRI元件的驅動程式。沒有它,XR運動就不起作用。其餘的元件允許特定XR運動成為可能的提供者。這些提供者對應于一種不同類型的虛拟現實運動,如瞬間移動、急轉彎或用雙手抓住表面并拖動自己,等等。

您可以根據您的喜好調整XR Origin預置的移動值,但是對于剛入門的人來說,使用預設值即可。

考慮目标平台的規格

當然,并非所有的虛拟現實平台都是一樣的,記住目标平台的硬體規格非常重要,尤其是當虛拟現實遊戲需要達到一緻的每秒60、90或120幀以最大限度地減少暈動病時。這可以通過降低您的最大眼睛分辨率,調整您的主相機的反鋸齒選項,減少動态燈光的數量以支援烘焙燈光,減少遊戲對象中使用的alpha透明度的數量,調整遊戲對象的LOD值,以便它們隻在玩家靠近它們時渲染更高幾何圖形的版本。

好消息是,根據您為每個平台指定的品質級别,在不同的品質設定之間切換非常容易。在“項目設定”視窗的“品質”頁籤中,您可以建立和自定義品質級别,以設定唯一的渲染器、抗鋸齒、LOD和照明設定,進而幫助您充分利用每個平台。

測試VR設定

既然您的項目已經針對您選擇的VR平台進行了配置,那麼是時候測試項目中新添加的XR裝備了。這裡有兩種推薦的VR測試方法:使用XRI工具包中的XR裝置模拟器來測試編輯器中的設定,或者建構播放器并在裝置上運作。

Unity中有一個友善的工具,叫做XR裝置模拟器,它允許您在遊戲模式下在編輯器的遊戲視圖中模拟XR控件。您可以通過測試移動設定來節省時間,而無需建構項目。要将XR裝置模拟器添加到您的項目中,請打開包管理器視窗,傳回到XRI工具包,單擊Samples頁籤,然後在Sample Assets下,單擊XR裝置模拟器旁邊的Import按鈕。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

在包管理器中,單擊XR Interaction Toolkit包,單擊Samples頁籤,然後單擊XR Device Simulator旁邊的Import按鈕,将其添加到您的項目中。

安裝完成後,打開項目設定視窗,點選XRI工具包标簽。在此頁籤中,啟用“在場景中使用XR裝置模拟器”複選框,以便在進入播放模式時在運作時添加XR裝置模拟器。您也可以将XR裝置模拟器預置從項目視窗直接拖放到您的場景中。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

在項目設定的XR Interaction Toolkit頁籤中,啟用“在場景中使用XR裝置模拟器”複選框,以便在進入播放模式時添加所選XR裝置模拟器預設的執行個體。

現在,當您在編輯器中進入播放模式時,您将能夠使用WASD和滑鼠控制來移動您的XR裝備,并按Tab鍵在移動所有控制之間切換,隻移動您的左手,或隻移動您的右手。這與實際的虛拟現實輸入不是1:1的比對,但它将幫助您測試您的運動設定是否立即如預期那樣工作。

請注意,在您建構您的項目之前,您需要禁用XRI工具包項目設定視窗中的“在場景中使用XR裝置模拟器”複選框,或者從您的場景中禁用/删除XR裝置模拟器。否則,您的虛拟現實控制将無法在裝置上正常工作。XR裝置模拟器模拟來自滑鼠和鍵盤或遊戲控制器的VR輸入,并忽略來自實際VR控制器的輸入。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

運作中的XR裝置模拟器示例

測試XR Rig的第二種方法是簡單地在目标平台上建構并運作它。每個XR裝置運作Unity builds的設定都是獨一無二的。連接配接裝置後,在建構設定視窗中選擇建構并運作,為目标平台建立建構并将其加載到裝置上。

建構在裝置上運作後,您可以自己測試輸入,看看哪些有效,哪些無效。唯一的限制是等待建構完成,并需要一個裝置用于測試。

僅僅通過這些步驟,以及對有凹渲染設定的一些細微調整,我就能夠在PS VR2上運作在GDC 2023上展示的全新URP模闆“日本花園場景”。

【愛迪斯通】如何在Unity的通用渲染管道中添加VR裝置支援

關于愛迪斯通

愛迪斯通(北京)科技有限公司專注于提供專業有效的3D/VR虛拟現實解決方案。為國内多家企業多所高校、研究機構提供服務。愛迪斯通很高興為您提供咨詢、購買、解決方案定制等相關服務,詳情歡迎緻電咨詢。

繼續閱讀