Unity Vision Pro 開發|十、透過影像辨識錨定空間

目錄
Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

教學說明

 

本篇僅對展示畫面進行基本說明,完整版課程及答疑僅限社群成員可見。歡迎關注原文作者並加入社群。

 

你可以隨時回到初始頁:Unity Vision Pro 開發|一、開發前準備 來了解從頭開始串連 UnityApple Vision Pro 的完整流程。

 

 

 

教學內容概括

 

  • 透過影像識別,在圖片上產生虛擬物體
  • 透過辨識到的圖片座標,校準虛擬空間,讓虛擬空間與現實空間1:1貼合
  • 靠近現實中的一個區域觸發事件
  • 室內導航輔助線效果
  • 事件管理中心代碼框架

 

 

ARFoundation 圖像識別

 

  • 提前在圖片庫裡存好圖片信息,由 ARTrackedImageManager 腳本進行圖像識別的處理,如果圖片與圖片庫裡存儲的圖片匹配,視為識別成功。
  • Tracked Image Prefab 參數會在識別到的圖片位置上生成我們指定的物體。
  • 缺點:所有識別到的圖片上只會顯示相同的 Tracked Image Prefab,但是可以額外寫腳本本來處理不同圖片生成對應物體的邏輯。

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間
Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

 

識別到的圖片坐標系

 

在圖片辨識成功後,生成虛擬物體。這些物體會根據圖片座標生成,並且可以進行更新。

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

 

項目演示

 

⭐導入 PolySpatial SDK

  1. 打開 Unity 專案,進入到 Unity Hub。
  2. 在專案中,導入 Vision Pro 的開發 SDK 和 PolySpatial 開發包,具體是 PolySpatial 2.0 Pro 11 版本。
  3. 確保你的應用是基於 Reacticate 渲染的,並且 App 模式設定為 Reacticate with PolySpatial

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

設置 Frame Rate

  1. 在 Unity 的 Project Settings 中找到 Pre to device 配置面板。
  2. 設置 Limit friends per second 參數,將其調整為 90 以確保即時串流調試過程中的流暢幀率。

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

配置 XR 插件

  1. 打開 Unity 上方的 Edit,進入 Project Settings
  2. 進入 XR Plug-in Management,勾選 PolySpatial XR 來啟用該插件的圖片辨識功能。

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

加入圖片辨識功能

  1. Assets/Samples/PolySpatial/Scenes 資料夾下,找到並打開 Image Checkin 場景。
  2. 使用 AR Tracked Image Manager 腳本,並引用一個圖片庫來實現圖片辨識。
  3. 預設包含兩張圖片,設定圖片在現實中的長度和寬度,單位是米。
  4. 如果需要加入自訂圖片,可點擊 Add Image,並在 Physical Size 中指定實際尺寸。

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

配置場景中的必要物件

  1. 在場景中加入 Volume Camera(體積相機),並設定為無邊界的應用場景。
  2. 加入 AR Session,通過 Unity 的 XR 選單建立 AR 會話物體。
  3. 新增玩家物體並配置 XR Interaction ManagerEvent System,用於管理場景中的互動。

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

自訂 AR Tracked Image Manager 腳本

  1. 創建自訂腳本 Custom Image Checking Manager,用於圖片辨識成功時生成對應的遊戲物體。
    1. 使用 GUID 作為圖片辨識的 key,並通過字典來對應要生成的遊戲物體。
    2. 監聽 Track boss change 事件,處理 addedupdatedremoved 三種圖片辨識狀態。
  2. 根據不同圖片生成不同的遊戲物體,並保持圖片座標和遊戲物體一致。

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

實現圖片辨識後的操作

  1. 在辨識成功後,生成遊戲物體並顯示在圖片上方(例如 UI 面板或座標系物體)。
  2. 點擊 UI 面板中的按鈕以進行進一步的操作,如校準虛擬房間與現實房間的位置。

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

測試與優化

  1. 配置完成後,運行應用,並測試圖片辨識是否能夠正常進行。
  2. 如果需要修正或優化功能,例如清除圖片識別後的物件,可以手動處理。

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

 

課程總結

 

透過對影片內容的整理,我們詳細介紹了如何使用 Unity 搭配 PolySpatial SDK 和 AR Foundation,從環境配置、圖片辨識的設置到自訂腳本的應用,成功實現基於圖片的 AR 互動功能。希望這些整理出的步驟能幫助你順利開發出流暢且功能強大的 MR 應用,並能靈活應用在實際項目中!

 

Unity Vision Pro 開發|十、透過影像辨識錨定空間

 

上一步:Unity Vision Pro 開發|九、空間錨點

下一步:Unity Vision Pro 開發|Metal 渲染模式開啟透視遇到背景黑畫面的解決方法

————————————————

以上內容來自 CSDN 作者:YY-nb

 

 

 

本文原創(或整理)於亞洲電玩通,未經作者與本站同意不得隨意引用、轉載、改編或截錄。

特約作家簡介

X
A
Y
B
JamXu的頭像
JamXu

經中華網龍遊戲企劃進入遊戲圈,然後被雷打到去學程式前後端又學了點設計帶帶幾個研發團隊,見證了 3D 渲染技術及遊戲引擎互相進步,也見證了研發代理的更迭與博弈遊戲的興起,再毅然研究起 SEO 網路行銷社群廣告投放,深信自研自賣才是最大贏家,期望能為台灣研發重回輝煌時光貢獻一點力量。如果你也有遊戲夢,歡迎交流認識。


支持贊助 / DONATE

亞洲電玩通只是很小的力量,但仍希望為復甦台灣遊戲研發貢獻一點動能,如果您喜歡亞洲電玩通的文章,或是覺得它們對您有幫助,歡迎給予一些支持鼓勵,不論是按讚追蹤或是贊助,讓亞洲電玩通持續產出,感謝。

亞洲電玩通AsiaGameMaster - Steam 遊戲鑑賞家
亞洲電玩通AsiaGameMaster - FB 粉絲專頁
亞洲電玩通AsiaGameMaster - IG 粉絲專頁
亞洲電玩通AsiaGameMaster - Twitter
亞洲電玩通AsiaGameMaster - Yoytube 粉絲專頁
亞洲電玩通AsiaGameMaster - Tiktok

BTC

亞洲電玩通AsiaGameMaster - BTC 鏈贊助地址

352Bw8r46rfXv6jno8qt9Bc3xx6ptTcPze

 

ETH

亞洲電玩通AsiaGameMaster - ETH 鏈贊助地址

0x795442E321a953363a442C76d39f3fbf9b6bC666

 

TRON

亞洲電玩通AsiaGameMaster - TRON 鏈贊助地址

TCNcVmin18LbnXfdWZsY5pzcFvYe1MoD6f

延伸閱讀