Unreal Engine 設置指南
本指南将詳細解釋如何在 Unreal Engine 中(zhōng)使用(yòng) Snapdragon Spaces SDK。
前提條件
請注意,Snapdragon Spaces SDK 目前支持 Unreal Engine 編輯器版本 4.27 和 5.0。此外,由于 OpenXR 插件的限制,僅支持 Windows 作(zuò)為(wèi)開發平台。遺憾的是,該插件不支持 Unreal Engine 5.1 及更高版本,并且 Unreal 編輯器中(zhōng)的 OpenXR 僅支持 Win64。
在安(ān)裝(zhuāng) Unreal Engine 時,必須添加 Android Build Support 才能(néng)導出 .apk 文(wén)件,請按照 Unreal 官方文(wén)檔 設置 Android SDK 和 NDK。
步驟 1:創建項目
要創建一個新(xīn)的 Unreal Engine 項目,請按照 Unreal 文(wén)檔中(zhōng)關于 AR 項目的“設置空白項目”部分(fēn)的步驟操作(zuò)。如果不需要導入示例,可(kě)以忽略“添加 Pawn 和遊戲模式”以及“創建 AR 會話”部分(fēn)。
步驟 2:導入插件
要将 Snapdragon Spaces 插件導入引擎,隻需将 SnapdragonSpaces_Plugin 壓縮包中(zhōng)的 SnapdragonSpaces 文(wén)件夾解壓到引擎安(ān)裝(zhuāng)路徑下的 Engine/Plugins/Marketplace 文(wén)件夾中(zhōng)即可(kě)。
警告! 如果 Engine 文(wén)件夾中(zhōng)沒有(yǒu) Marketplace 文(wén)件夾,可(kě)以在 Plugins 文(wén)件夾内創建一個,然後複制 SnapdragonSpaces 文(wén)件夾進去。請注意,隻有(yǒu)遵循建議的路徑,Unreal 才能(néng)檢測到插件。 |
不推薦直接将插件導入項目,不過,如果必須這麽做,請确保每次升級 SDK 時清理(lǐ)臨時文(wén)件或中(zhōng)間文(wén)件,以防止編譯錯誤。
步驟 3:導入示例
要将 Snapdragon Spaces 示例導入項目,打開 SnapdragonSpaces_Samples 壓縮文(wén)件,将 Config 文(wén)件夾複制到項目根目錄并覆蓋現有(yǒu)文(wén)件,然後将位于項目文(wén)件夾的 Plugins 文(wén)件夾中(zhōng)的 SnapdragonSpacesSamples 插件複制到項目的 Plugins 文(wén)件夾(如果項目中(zhōng)沒有(yǒu) Plugins 文(wén)件夾,請創建一個)。請注意,SnapdragonSpacesSamples 插件需要 Snapdragon Spaces 插件。添加示例插件之前,請确保項目中(zhōng)已添加 Snapdragon Spaces 插件。Content 子文(wén)件夾包括示例文(wén)件夾和一個 common 文(wén)件夾。common 文(wén)件夾包含正确使用(yòng) AR 設備的基本藍圖。
使插件文(wén)件夾在項目中(zhōng)可(kě)見 為(wèi)了訪問 Snapdragon Spaces 示例内容,請在編輯器中(zhōng)激活項目插件的可(kě)見性。 |
步驟 4:更改項目設置
要啓用(yòng) Snapdragon Spaces OpenXR 插件,請依次前往 Edit > Plugins > Mixed Reality,然後啓用(yòng) SnapdragonSpaces 插件。
在 Edit > Plugins > Virtual Reality 下,檢查是否啓用(yòng)了 OpenXR 插件。
警告! 确保已禁用(yòng)OpenXRHandTracking插件,該插件可(kě)能(néng)會與 Snapdragon Spaces 的功能(néng)發生沖突。 |
構建包時,有(yǒu)些設置是必需的。請在 Project Settings > Snapdragon Spaces 中(zhōng)檢查您的項目是否已正确配置。
以下是截圖中(zhōng)各項内容的描述:
1、刷新(xīn)設置驗證。請在應用(yòng)此标簽中(zhōng)的更改後執行此操作(zuò)。
2、當啓用(yòng)的功能(néng)出現問題時,會顯示錯誤消息。
3、顯示可(kě)以啓用(yòng)的功能(néng)。
4、顯示項目設置中(zhōng)的錯誤和警告消息。
5、顯示必需的設置。這些選項都必須啓用(yòng)才能(néng)繼續構建。
6、顯示提高性能(néng)的推薦設置。
步驟 5:為(wèi) Spaces VR 項目添加 XR 控制器
警告! 對于設計為(wèi)不兼容虛拟或混合現實設備的增強現實項目,此步驟不需要 |
要配置輸入設置,請依次前往 Edit > Project Settings > Engine > Input,然後,添加 XR Controller (L) Thumbstick X 和 XR Controller (L) Thumbstick Y 來管理(lǐ)左控制器,添加 XR Controller (R) Thumbstick X 和 XR Controller (R) Thumbstick Y 來管理(lǐ)右控制器,可(kě)以根據需要随意命名(míng)這些操作(zuò)。
另一種選擇是将以下幾行添加到 Config > DefaultInput.ini 文(wén)件中(zhōng):
可(kě)選:自定義控制器設置
Snapdragon Spaces Unreal Engine 插件可(kě)以在主設備啓動應用(yòng)程序時生成控制器。此功能(néng)在插件設置中(zhōng)默認啓用(yòng),路徑為(wèi) Edit > Project Settings > Plugins > Snapdragon Spaces(點擊齒輪圖标)。
如果需要不同外觀和稍微不同功能(néng)的自定義實現,可(kě)以按照自定義控制器部分(fēn)中(zhōng)的步驟構建一個替代控制器文(wén)件。
然後,可(kě)以在項目設置中(zhōng)包含并鏈接這些步驟生成的文(wén)件。必須啓用(yòng)“使用(yòng)自定義控制器”選項(這也需要啓用(yòng)“在主設備上啓動控制器”選項),這樣就可(kě)以選擇替代控制器文(wén)件的路徑。
可(kě)選:添加新(xīn)的交互配置文(wén)件
如果希望使用(yòng)和創建新(xīn)的交互配置文(wén)件,而不是 Snapdragon Spaces 插件中(zhōng)提供的默認配置文(wén)件,可(kě)以創建一個新(xīn)的類。該類可(kě)以繼承自 IModuleInterface 和 IOpenXRExtensionPlugin 接口,并實現 StartupModule、ShutdownModule、GetDisplayName 和 GetInteractionProfile 函數。在 StartupModule 中(zhōng)需要創建必要的鍵,在 GetInteractionProfile 中(zhōng)需要配置所需的交互配置文(wén)件,你可(kě)以參考 FSpacesInputExtension 類的實現。确保在 PostConfigInit 加載階段加載這個新(xīn)模塊。最後,可(kě)以使用(yòng)之前創建的鍵來設置所需的動作(zuò)和軸映射,并在項目中(zhōng)使用(yòng)這些輸入。