使用 MRTK 設定新的 OpenXR 專案

為混合實境設定 Unity 專案最簡單的方式,就是使用 混合實境工具組 (MRTK) 。 適用于 Unity 的 MRTK 是開放原始碼的跨平臺開發工具組,旨在讓您輕鬆建置令人讚歎的混合實境應用程式。

Infographic showing some of the features of the Mixed Reality Toolkit.

MRTK 提供跨平台輸入系統、基礎元件,以及空間互動的常見基本要素。 其可協助您加速 Microsoft HoloLens、Windows Mixed Reality 沉浸式 (VR) 頭戴裝置和其他許多 VR/AR 裝置的應用程式開發。 此專案旨在減少進入障礙,讓每個人都能夠建置混合實境應用程式,並隨著我們成長而回到社群。

MRTK 支援各種不同的平臺,包括:

  • Microsoft HoloLens

  • Microsoft HoloLens 2

  • Windows Mixed Reality 頭戴式裝置

  • OpenVR 頭戴式裝置 (HTC Vive / Oculus Rift)

  • Ultraleap 手部追蹤

  • Android 和 iOS 裝置

注意

從 MRTK3 開始,我們將新的混合實境設計語言引進給開發人員。 如需詳細資訊,請參閱 MRTK3 檔

其他非 OpenXR 組態選項

Windows XR:Microsoft 不建議針對 Unity 2020 中的任何新專案使用 Windows XR 外掛程式。 您應該改用混合實境 OpenXR 外掛程式。 不過,如果您使用 Unity 2019,而且您需要 AR Foundation 2.0 才能與 ARCore/ARKit 裝置相容,此外掛程式會啟用該支援。

重要

在 Unity 2019 中使用此外掛程式與 Azure Spatial Anchors 不相容。

舊版 XR:如果您仍在 Unity 2019 或更早版本,Microsoft 建議使用舊版內建 XR 支援。 雖然 Windows XR 外掛程式在 Unity 2019 上運作,但我們不建議這麼做,因為它與 Unity 2019 上的 Azure Spatial Anchors 不相容。

如果您要開始新的專案,建議您改為安裝 Unity 2020,並使用混合實境 OpenXR 外掛程式。

建立新的 Unity 專案

  1. 啟動 Unity 中樞

  2. 在 [ 專案] 索引 標籤中,按一下 [ 新增專案]。

    Screenshot of Unity Hub in Projects tab with the New Project button highlighted.

  3. 按一下 [ 新增專案 ] 下方的下拉式清單,然後選取您想要的編輯器版本。

    Screenshot of Unity Hub with the Editor version drop-down displayed.

  4. 確定所選的範本為 3D 核心

  5. 在 [ 專案名稱] 方塊中,輸入專案的名稱,例如「MRTK 教學課程」。

  6. 在 [ 位置] 方塊中,按一下資料夾圖示,然後流覽至您要儲存專案的資料夾並加以選取。 您也可以建立新的資料夾。

    Screenshot of Unity Hub with 3D, Project Name, Location, and Create highlighted.

  7. 按一下 [建立專案]。 這會在 Unity 中開啟您的專案。

    Screenshot of your project open in Unity.

警告

在 Windows 上運作時,MAX_PATH 限制為 255 個字元。 Unity 會受到這些限制所影響,如果有任何檔案路徑的長度超過 255 個字元,可能就無法編譯。 因此,建議您盡可能將 Unity 專案儲存到磁片磁碟機的根目錄附近。

設定您的組建目標

  1. 在功能表列上,選取 [檔案]>[建置設定...]。

    若要建置適用于 Windows Mixed Reality 的應用程式,您必須選擇組建目標。 通用 Windows 平臺 (UWP 的組建設定) 以任何裝置為目標,包括 HP Reverb G2之類的沉浸式頭戴裝置。 如果您要為 HoloLens 2 建置,這是最佳選擇;不過,如果您是以桌面 VR 為目標,建議您使用 PC、Mac & Linux 獨立 平臺。

  2. 執行下列其中一個動作:

    如果您是以桌面 VR 為目標

    • 保留新的 Unity 專案上預設選取 的電腦、Mac & Linux 獨立 平臺:

    Screenshot of Build Settings window open in the unity editor with PC, Mac & Standalone platform highlighted

    如果您要以 HoloLens 2為目標:

    • [平臺]底下,選取 [通用 Windows 平臺]。 請確定下列設定為作用中:

    目標裝置:HoloLens

    架構:ARM64

    組建類型:D3D 專案

    目標 SDK 版本:最新安裝

    最低平臺版本:10.0.10240.0

    Visual Studio 版本:最新安裝

    建置並執行于:本機電腦

    組建組態:發行 (偵錯) 有已知的效能問題

    Screenshot of Build Settings window open in the unity editor with Universal Windows Platform highlighted.

  3. 按一下 [ 切換平臺] 按鈕。 Unity 會在切換平臺時顯示進度列。

  4. 切換平臺程式完成之後,請關閉 [建置 設定 ] 視窗。

下載並安裝混合實境功能工具

探索、更新和匯入功能套件的最佳方式是使用混合實境功能工具。 您可以依名稱或類別搜尋套件、查看其相依性,以及在匯入之前檢視專案資訊清單檔的建議變更。

  1. Microsoft 下載中心下載最新版的混合實境功能工具。

  2. 下載完成之後,將檔案解壓縮並儲存到您的桌面。

    注意

    您必須先安裝.NET 5.0 執行時間,才能執行混合實境功能工具

  3. 在解壓縮的資料夾中,流覽至可執行檔 MixedRealityFeatureTool.exe ,然後使用它來啟動混合實境功能工具。

    Screenshot of Opening MixedRealityFeatureTool.

匯入混合實境工具組和 OpenXR 套件

  1. 在 [混合實境功能工具] 中,選取 [ 開始]。

    Screenshot of the Mixed Reality Feature Tool opening screen.

  2. 選取 [流覽] 按鈕 (它是下圖中的 [三點] 按鈕) ,然後流覽至您的專案,然後開啟它。

    Open your project

    注意

    工具中的 [ 專案路徑 ] 方塊必須包含值,因此預設會插入反斜線 (「_」) 。

    選取資料夾之後,工具會檢查以確保它是有效的 Unity 專案資料夾。

    Screenshot of the Mixed Reality feature Tool Project Path screen.

  3. 選取 [探索功能]。

    注意:當工具從摘要重新整理套件時,您可能需要等候幾秒鐘。

  4. 在 [ 探索功能 ] 頁面上,請注意有六個套件群組的清單。

    The main groups of packages in the Mixed Reality Feature Tool

  5. 按一下 混合實境工具組 左側的 「+」 按鈕, (10) ,然後選取最新版本的 混合實境工具組基礎

    注意

    混合實境工具組基礎套件是唯一必須匯入和設定的套件,才能搭配您的專案使用 MRTK。 此套件包含建立混合實境應用程式所需的核心元件。

  6. 按一下 [平臺支援] 左側的 [+] 按鈕 , (5) ,然後選取最新版本的 混合實境 OpenXR 外掛程式

    Screenshot of package selections in the Mixed Reality Feature Tool.

  7. 在選取 () 之後,按一下 [ 取得功能]。

  8. 選取 [驗證 ] 以驗證您選取的套件。 您應該會看到一個對話方塊,指出 未偵測到驗證問題。 當您這樣做時,按一下 [ 確定]。

  9. 在 [ 匯入功能 ] 頁面上,左側資料行 [功能] 會顯示您剛才選取的套件。 右側資料行 [必要相依性]會顯示任何相依性。 您可以按一下這些專案的 [詳細資料] 連結,以深入瞭解這些專案。

  10. 當您準備好繼續進行時,請選取 [ 匯入]。 在 [ 檢閱和核准 ] 頁面上,您可以檢閱套件的相關資訊。

  11. 選取 [核准]。

  12. 返回 Unity 編輯器,然後按一下 UI 中的空白區域。 您會看到進度列,顯示正在匯入套件。

設定 OpenXR 設定

  1. 在 Unity 匯入套件之後,會出現警告,詢問您是否要重新開機編輯器來啟用後端。 選取 [是] 。

    Screenshot of Unity Restart Option.

  2. Unity 重新開啟之後,應該會出現 MRTK Project Configurator。 如果沒有,請手動開啟它:在功能表列上,選取[混合實境>工具組>公用程式>設定 MRTK 的專案]:

    Screenshot of the menu bar command for opening the MRTK Configurator.

  3. 選取 [Unity OpenXR 外掛程式 ] 以啟用 XR 外掛程式管理,並將 Unity OpenXR 外掛程式新增至您的專案。

    Screenshot of MRTK project configurator window with OpenXR selected.

  4. OpenXR 專案驗證隨即開啟。 您現在可以忽略此專案。

  5. 在 [ 歡迎使用 MRTK!] 畫面上,選取 [ 顯示 XR Plug-In管理設定]。

    Screenshot of the Show XR Plug-In Management Settings button.

    這會開啟 [專案設定] 視窗。

設定桌面 VR 的專案

如果您要針對 HoloLens2 進行開發,請略過本節並移至下一節: 設定 HoloLens 2 的專案

  1. 在 [ 專案設定 ] 視窗中,確定您位於 [XR 外掛程式管理 ] 頁面,並在 [ Mac & Linux 獨立 ] 索引標籤中。

    Screenshot of the Project Settings Window open to the XR Plugin Management Page and PC, Mac & Linux Standalone tab.

  2. 確定已選取 [ 啟動時初始化 XR ],然後在 [ 外掛程式提供者] 底下,按一下 [ 開啟 XR]。

    Screenshot of the Project Settings Window, inside the PC, Mac & Linux Standalone tab, with Initialize XR on Startup selected and the OpenXR Plugin highlighted.

  3. OpenXR 外掛程式會載入,然後兩個專案會出現在 OpenXR下方。 選取第一個 Windows Mixed Reality 功能群組

    Screenshot of Project Settings Window the OpenXR Plugin and Windows Mixed Reality feature group highlighted.

請注意, OpenXR旁邊現在有黃色警告三角形。 這表示您有需要解析的不相容設定。 若要瞭解如何解決此問題,請略過下一節關於設定 HoloLens 2 並繼續進行下一節解決 不相容的設定

設定 HoloLens 2 的專案

  1. 在 [ 專案設定 ] 視窗中,確定您位於 [ XR 外掛程式管理 ] 頁面上,並已選取 [通用 Windows 平臺設定] ([Windows 標誌] 索引標籤) 。

    Screenshot of the Project Settings Window open to the XR Plugin Management Page and Universal Windows Platform tab.

  2. 確定已選取 [ 啟動時初始化 XR ],然後在 [ 外掛程式提供者] 底下,按一下 [ 開啟 XR]。

    Screenshot of Project Settings Window 3.

  3. OpenXR下方會出現兩個專案。 選取第一個 Microsoft HoloLens 功能群組

請注意, OpenXR旁邊有黃色警告三角形。 這表示您有需要解析的不相容設定。

解析不相容的設定

本節中的影像會顯示 [通用 Windows 平臺] 索引標籤中的選項。不過,除非另有說明,否則桌面 VR 索引標籤的指示相同。

  1. 將游標停留在 OpenXR旁的黃色警告三角形上,然後在快顯中讀取訊息,然後選取三角形。

    Screenshot of warning about incompatible settings.

  2. [OpenXR 專案驗證 ] 視窗中,列出數個問題。 選取 [全部修正] 按鈕。 注意:此清單可能會根據您所在的索引標籤而有所不同。

    Screenshot of the Fix All button in the OpenXR Project Validation window.

  3. 一個問題會保留下來,並告訴您至少必須新增一個互動設定檔。 若要這樣做,請按一下 [ 編輯]。 這會帶您前往 [專案設定] 視窗中OpenXR外掛程式的設定。

    Screenshot of the Project Settings window with the OpenXR settings displayed.

  4. [互動設定檔] 底下,記下加號 (+) 按鈕。

    Screenshot of the Add Interaction Profile button.

  5. 每次選擇不同的設定檔時,按一下按鈕三次:

    眼球注視互動設定檔

    Microsoft Hand 互動設定檔

    Microsoft 動作控制器設定檔

    Screenshot of interaction profiles that should be added.

    如果 眼睛注視互動設定檔或任何其他設定檔出現,旁邊會出現黃色三角形、選取三角形,然後在 [OpenXR 專案驗證 ] 視窗中,按一下 [ 修正 ] 按鈕。 當您完成時,請關閉 [OpenXR 專案驗證 ] 視窗。

    Screenshot of the Fix button for the Eye Gaze interaction profile.

  6. 在 [ 專案設定] 視窗的 [OpenXR 功能群組] 底下,確定已選取下列專案:

    Microsoft HoloLens

    手部追蹤

    動作控制器模型

    Screenshot of selected features for OpenXR.

  7. 按一下 [ 深度提交模式 ] 下拉式清單,然後選取 [深度 16 位]。

    Screenshot of Depth 16 Bit selected for Depth Submission Mode.

    提示

    將深度格式減少為 16 位是選擇性的,但它可能會改善專案中的圖形效能。 若要深入瞭解,請參閱 HoloLens) (深度緩衝區共用

    注意

    位於深度提交模式正上方的[轉譯模式] 設定預設會設定為[單一傳遞實例]。 在混合實境應用程式中,場景會轉譯兩次:每個眼睛一次。 結果是「立體視覺」。這會將必要的運算量加倍,因此請務必在 Unity 中選取最有效率的轉譯路徑,以節省 CPU 和 GPU 時間。 單一傳遞實例轉譯是這裡的最佳選擇--我們建議您針對每個專案預設啟用它。 若要深入瞭解, 請參閱 Unity 檔

  8. 關閉 [MRTK 專案設定器] 視窗。

設定播放機設定

  1. 在 [ 專案設定 ] 視窗的左側資料行中,選取 [播放程式]。

  2. 請注意,在 [ 播放程式 ] 視窗中,[ 產品名稱] 方塊已填入。 這會取自您的專案名稱,而且將會是 HoloLens [開始] 功能表中顯示的名稱。

    Screenshot of Unity Publishing Settings with the Project Name box filled in.

    提示

    若要讓應用程式更容易在開發期間找到,請在名稱前面加上底線,將它排序到任何清單的頂端。

  3. 按一下 [ 發佈設定 ] 下拉式清單,然後在 [ 套件名稱 ] 欄位中輸入適當的名稱。

    Screenshot of Unity Publishing Settings with the package name box filled in.

    注意

    套件名稱是應用程式的唯一識別碼。 如果您想要避免以相同名稱覆寫先前安裝的應用程式版本,您應該在部署應用程式之前變更此識別碼。

  4. 關閉 [專案設定] 視窗。

Optimization

如果您要針對 HoloLens 2 進行開發,請在功能表列上選取 [混合實境 > 專案 > 套用 HoloLens 2 的建議專案設定 ],以取得更好的應用程式效能。

Screenshot of the mixed reality menu item open with OpenXR selected

您現在已準備好開始使用 Unity 中的 OpenXR 進行開發!

Unity 範例專案

請參閱 OpenXR 混合實境範例存放庫 ,以取得範例 unity 專案,示範如何使用混合實境 OpenXR 外掛程式建置 HoloLens 2 或混合實境頭戴式裝置的 Unity 應用程式。

另請參閱