Unity Apple Vision Pro 教學說明
這期教學我將介紹使用 Unity 開發 Apple Vision Pro 應用程式所需的 Unity 環境配置,以及如何匯入 PolySpatial 範例場景、配置 Play To Device 即時預覽功能、將 Unity 程式打包到頭顯中運作。
你可以隨時回到初始頁:Unity Vision Pro 開發|一、開發前準備 來了解從頭開始串連 Unity 與 Apple Vision Pro 的完整流程。
開發前期準備(軟硬體需求,開啟 vision pro 開發者模式與 Wi-Fi 無線偵錯功能,Xcode 程式打包至頭戴裝置)
PolySpatial 官方文件(需要時刻關注開發者文檔,因為 PolySpatial 處於早期階段,在未來可能有些地方會發生變動)
教學內容概括
這期教程主要目標是成功運行 PolySpatial 官方範例場景,PolySpatial 是 Unity 提供的用於開發 visionOS 的 MR 應用的開發工具。
Unity 是什麼
Unity 是一款功能強大的跨平台遊戲引擎,可用於 2D 和 3D 遊戲的開發,支援包括個人電腦、行動裝置、遊戲主機、網頁平台、擴增實境(AR)和虛擬實境(VR)在內的多種平台。由於其高度的靈活性和豐富的資源庫,Unity 成為許多獨立遊戲開發者的首選工具,並在 iOS 和 Android 的遊戲開發中尤其受歡迎。Unity 不僅適用於遊戲開發,還逐漸在其他領域如電影製作、建築可視化、汽車設計等行業中嶄露頭角,成為多媒體和互動內容開發的重要工具之一。
Unity 配置
新增 visionOS Build Support 模組
安裝 Unity 編輯器的時候需要新增 visionOS Build Support 模組,如果之前沒有加入過,也可以在 Unity Hub 手動新增對應版本的編輯器。
安裝了這個模組後,我們在打包 Unity 程式的時候就能夠選擇 visionOS 作為打包發布的平台,visionOS 是蘋果頭戴式獨立的作業系統。
新增 Unity Pro 許可證
Unity 開發 Apple Vision Pro 的應用有分為三種模式:視窗模式,VR 模式,MR 模式。這三種模式的區分我會在下期教學進行詳細的說明。如果開發的是視窗模式,不需要新增 Unity Pro 許可證,如果開發的是 VR 或 MR 模式,則需要新增 Unity Pro 許可證。
新增 Unity Pro 授權可以在 Unity Hub 中點擊自己的頭像,選擇 Manage licenses。
然後點選右上角的 Add,點選第一個選項,輸入 Unity Pro 的啟動碼:
Unity 渲染管線選擇
可以選擇預設的 3D Build-in 渲染管線,也可以選擇 URP。不過導入 PolySpatial 後如果項目不是 URP,也會自動升級成 URP。
Build Settings 裡切換 visionOS
在 Unity 的 File>Build Settings 裡將打包發布平台切換成切換 visionOS 。 Target SDK 處,如果要把程式打包到頭顯中執行,選擇 Device SDK 。如果要讓程式在 Xcode 模擬器裡運行,選擇 Simulator SDK。
XR Plug-in Management 設定
Edit > Project Settings 新增 XR Plug-in Management ,勾選 Apple visionOS(只有新增了 Unity Pro 授權才能勾選上)
勾選後 Unity 會讓你匯入新版輸入系統 Input System,然後重新啟動編輯器,我們點擊 Yes 就能自動進行。
然後 Unity 也會自動幫我們匯入這些套件:
- Apple visionOS XR Plugin (com.unity.xr.visionos)
- AR Foundation (com.unity.xr.arfoundation)
- XR Core Utilities (com.unity.xr.core-utils)
切換MR 模式
XR Plug-in Management 下方的 Apple visionOS 中將 App Mode 切換成自己想要的模式,匯入 PolySpatial 需要選擇 Mixed Reality。
然後 Unity 會幫我們匯入 PolySpatial 相關的套件:
- PolySpatial (com.unity.polyspatial)
- PolySpatial XR (com.unity.polyspatial.xr)
- PolySpatial visionOS (com.unity.polyspatial.visionos)
如果導入後發現 XR Plug-in Management 下只剩下 Project Validation,可以重新啟動 Unity 專案。
Project Validation
XR Plug-in Management 下的Project Validation 點選Fix All。
Hand Tracking Usage Description 和 World Sensing Usage Description
XR Plug-in Management 下的 Apple visionOS 中填寫 Hand Tracking Usage Description 和 World Sensing Usage Description,填寫的內容會在程式請求手追和空間資料權限的時候出現。
例如 Unity 填寫的是:
Hand Tracking Usage Description:Input
World Sensing Usage Description:MR
那麼之後在程式中顯示的是:
匯入PolySpatial 範例場景
Window > Package Manager 中匯入 PolySpatial 的兩個 Sample。
開啟 Samples > PolySpatial > Scenes 的 Project Launcher 場景,此場景相當於所有範例場景的啟動器,然後根據彈跳窗的資訊匯入 TMP Essentials。
如果專案之前的渲染管線是預設的渲染管線,那麼你會發現導入樣例後場景中物件是紫色的。這時候需要手動進行一次 URP 的材質升級,將原先渲染管線的材質轉換成 URP。點選 Window > Rendering > Render Pipeline Converter,勾選所有選項,點選 Initialize And Convert。
配置Play To Device
Play To Device 相當於 Unity 中的 Vision Pro 串流調試工具。當電腦和頭戴裝置連接在一起的時候,點擊 Unity 運行按鈕,可以在頭顯中即時預覽Unity 中的場景,就不用每次調試都打包到頭顯中運行。
但是,在發布這篇文章的時候,Play To Device 只支援顯示預覽 MR 模式下的 Shared Space 共享空間的應用程式類型,像是 VR 應用程式和需要用到 ARKit 功能的功能還不支援在 PolySpatial 中預覽。
⭐安裝 TestFlight 和 Unity Play To Device Host
首先在 Mac 上下載 TestFlight,然後在 Test Flight 中安裝 Unity Play To Device Host,版本必須與 Unity 的 PolySpatial 版本一致,可以從此連結下載。
然後在 VP 上下載 TestFlight,登入和 Mac 相同的 Apple ID,這個時候能在 VP 的 TestFlight 看到 Unity Play To Device Host,安裝後點擊 Open,也可以直接在應用程式清單中找到 Play To Device Host 打開,此時介面會顯示 IP,這個 IP 待會兒會用到。
Unity 配置 Play To Device
打開 Unity 的 Window > PolySpatial > Play To Device,Advance Settings 裡將 Name 改成自己喜歡的名字,將 Host IP 改成 VP 裡 Play To Device Host 裡顯示的 IP,然後 Add Device,點擊 Connect,再把 Connect To Play 改成 Enabled。
設定完成後,之後若想要在頭戴裝置即時預覽 Unity 畫面,只要在頭戴裝置開啟 Play To Device Host,然後點選 Unity 執行按鈕,如果頭戴裝置顯示 Unity 畫面即設定成功,關閉應用程式時最好在 Unity 中再次點擊運行按鈕將程式退出。如果 Unity 的 Console 控制台裡顯示連接不上 IP,並且確保輸入的 IP 是正確的,可以在 VP 裡把 Play To Device Host 的後台清理掉(長按頭顯上方的兩個按鈕,會彈出後台應用列表),再重新嘗試。
Unity 程式打包到頭顯中執行
開啟 File > Build Settings,把所有範例場景拖曳到 Scenes In Build 清單下,並且將 Project Launcher 場景放置第一位。
點選 Build,選擇一個打包好的資料夾,接下來 Unity 程式就會被打包成一個 Xcode 工程。我們開啟 Xcode,開啟剛轉換的 Xcode 工程,選擇後綴為 xcodeproj 的檔案。
這時候 Xcode 介面就會顯示出由 Unity 程式轉換成的 Xcode 專案。然後點選工程資料夾裡最頂端的資料夾,點選 Signing & Capabilities,勾選 Automatically manage signing,然後在 Team 處關聯自己的蘋果開發帳號。
打包設備選擇與電腦連接的頭顯設備,然後點擊運行按鈕點擊 Xcode 中的運行按鈕,就能將 Xcode 程式打包然後傳輸到頭顯。
上一步:Unity Vision Pro 開發|一、開發前準備
下一步:Unity Vision Pro 開發|三、visionOS 应用形态
————————————————
本文原創(或整理)於亞洲電玩通,未經作者與本站同意不得隨意引用、轉載、改編或截錄。
特約作家簡介
支持贊助 / DONATE
亞洲電玩通只是很小的力量,但仍希望為復甦台灣遊戲研發貢獻一點動能,如果您喜歡亞洲電玩通的文章,或是覺得它們對您有幫助,歡迎給予一些支持鼓勵,不論是按讚追蹤或是贊助,讓亞洲電玩通持續產出,感謝。
BTC |
352Bw8r46rfXv6jno8qt9Bc3xx6ptTcPze |
ETH |
0x795442E321a953363a442C76d39f3fbf9b6bC666 |
TRON |
TCNcVmin18LbnXfdWZsY5pzcFvYe1MoD6f |