📕教學說明
這期教學我將介紹使用 visionOS 開發的應用形態,以及 Unity 如何適合 visionOS 的。掌握了相關的知識點後,我們就能明白能在蘋果頭顯中開發什麼類型的應用,每一種類型在開發的時候有哪些限制,能夠利用上什麼特性。
📕常用名詞解釋
Metal:蘋果系統的底層圖形 API,負責渲染。
ARKit:蘋果的 AR 框架,提供了追蹤、偵測和姿態估計等核心功能。
RealityKit:基於 ARKit 的一套更高層的框架。擁有 3D 引擎來處理 AR 應用的渲染,物理,動畫等效果。 【 AR+3D 渲染】渲染的底層也是基於 Metal,但提供了更高層的封裝。
📕visionOS 是什麼
visionOS 是蘋果為 Apple Vision Pro 設計的全新操作系統,專注於 AR 和 VR。2023 年 6 月 21 日,蘋果發布了 visionOS SDK,讓開發者創造出突破性的應用體驗。使用者能通過眼睛、手勢和語音與 3D 介面互動,將數位內容無縫融入現實世界。visionOS 支援多任務處理和高效能圖像,適用於娛樂、工作、創作等應用場景。Apple Vision Pro 採用全球首款空間作業系統 visionOS,提供無限畫布的運算應用。開發者能利用其強大功能,設計出生產力、設計、遊戲等類別的應用,帶來全新沉浸式互動體驗。
📕visionOS 空間型
⭐Shared Space 共享空間
不同的 2D 視窗和 3D 應用程式能夠在空間中一起運作。打開頭顯預設進入的就是共享空間。
進階版的程式多開:共享空間中的所有應用程式由 RealityKit 渲染。
互動方式:眼睛注視 + Pinch 捏合手勢(Pinch:捏合拇指和食指),近距離 Poke,近距離 Pinch
應用載體:Window 視窗和 Volume 體積分別裝載平面視窗和 3D 應用。其中 3D 應用都是被包裹在了一個立方體的範圍內。
⭐Full Space/Immersive Space 獨佔空間
應用程式單獨佔據整個空間,會隱藏共享空間中的其他應用,然後整個空間只顯示這個應用程式。類比電腦,電腦螢幕上可以顯示多個窗口,對應共享空間;也可以一個應用程式全螢幕顯示,對應獨佔空間。只不過現在這些應用被搬到了三維空間中,並且既可以有2D 窗口,也可以有3D 模型。獨佔空間中整個空間都是應用載體,也可以存放視窗或體積類型的內容。
能夠使用 ARKit 的功能(共享空間無法使用)。例:
- 手勢追蹤獲取手部骨骼數據。用法:手部與虛擬物體碰撞,手勢辨識。
- 取得到房間的網格資料。用法:實現虛擬物體與現實物體之間的碰撞。
- 平面識別。
- 圖片辨識。
- 物體追蹤。
- 頭部追蹤。
應用沉浸度:
📕visionOS 渲染框架
兩種渲染方式。
RealityKit:一般用於渲染 Shared Space 和 Full Space 下的 Passthrough 模式【現實環境+虛擬內容】
CompositorServices:使用底層的 Metal 圖形 API 和 ARKit 相關的環境感知等能力,來做渲染的合成。其他引擎的渲染能夠基於這套 API 將自己渲染的內容適配到 visionOS 上,因此在渲染時能保留自己的渲染管線。
visionOS 1.0 時期一般用於渲染 Full Space下的 Fully Immersive 模式(VR)。其他的遊戲引擎開發 visionOS 的 VR 應用程式就是使用這種渲染方式。
visionOS 2.0 時期也支援 Full Space 下的 Passthrough 模式。
Full Space 下的渲染框架圖:
📕Unity 開發 visionOS 應用的不同模式
⭐視窗模式
Unity 裡渲染的畫面會顯示在空間中的平面視窗中,使用 Metal 渲染。無需使用 Unity Pro 授權和 XR 開發工具包,只需適配眼手互動的輸入。
⭐VR 模式
顯示完全虛擬的環境。渲染由 Unity 引擎完成,底層適配了蘋果的 CompositorSevices,使用 Metal 渲染。使用 XR 開發工具包進行開發,和傳統的 VR 開發方式類似。
⭐MR 模式
現實環境中新增虛擬內容。分為 Shared 模式(對應 Shared Space)和 Exclusive 模式(對應 Full Space)。使用 PolySpatial 工具包進行開發,Unity 不負責渲染,而是把渲染相關的東西轉換成 RealityKit 能理解的東西,最後交給 Realitykit 處理渲染。在 Unity 支援了 visionOS 2.0 之後開發 Full Space 下的 MR 應用也能使用 Metal 渲染,能使用 Unity 自己的渲染管線。
📕總結
上一步:Unity Vision Pro 開發|二、Unity 環境配置、程式打包
下一步:Unity Vision Pro 開發|四、體積相機 Volume Camera
————————————————
本文原創(或整理)於亞洲電玩通,未經作者與本站同意不得隨意引用、轉載、改編或截錄。
特約作家簡介
支持贊助 / DONATE
亞洲電玩通只是很小的力量,但仍希望為復甦台灣遊戲研發貢獻一點動能,如果您喜歡亞洲電玩通的文章,或是覺得它們對您有幫助,歡迎給予一些支持鼓勵,不論是按讚追蹤或是贊助,讓亞洲電玩通持續產出,感謝。
BTC | ETH | TRON |
352Bw8r46rfXv6jno8qt9Bc3xx6ptTcPze | 0x795442E321a953363a442C76d39f3fbf9b6bC666 | TCNcVmin18LbnXfdWZsY5pzcFvYe1MoD6f |