Unity 的 AR Foundation 是跨平台架構,可讓您一次編寫一次擴增實境體驗,然後針對 Android 或 iOS 裝置進行建構,不必進行其他變更。您可以透過 Unity 的 AR Foundation 套件使用這個架構。
ARCore 的選擇性 ARCore Extensions for AR Foundation 套件提供額外功能,可讓您使用 Cloud 錨點、相機設定篩選器,以及錄製和播放至應用程式等功能。
遷移或升級現有專案
- 如要將現有專案從 Unity 的 (已淘汰) ARCore SDK 遷移至 Unity 的 AR Foundation,並視需要遷移至 ARCore Extensions,請參閱遷移指南。
- 如要從較舊的 AR Foundation 版本升級現有專案,請參閱 Unity 的升級和遷移指南。
需求條件
視目標平台而定,AR Foundation 套件需要下列項目:
Android
硬體
- 支援 ARCore 的 Android 裝置或模擬器
- 用來將裝置連接至開發機器的 USB 傳輸線
軟體
iOS
硬體
- 支援 ARCore 的 iOS 裝置
- 用來將裝置連接至開發機器的 USB 傳輸線
軟體
安裝 AR Foundation
請按照下列步驟安裝 AR Foundation Unity 套件。
開啟現有 Unity 專案,或建立新的 3D 專案。
前往 Window > Package Manager。
選取「Packages」旁邊的「Unity Registry」。
在搜尋列中輸入「AR Foundation」。
按一下「Install」。
安裝及啟用平台專屬外掛程式套件
AR Foundation 套件提供 Unity 開發人員使用的介面,但不會實作任何 AR 功能。如要在目標裝置上使用 AR Foundation,您還需要安裝個別的套件,並為各平台啟用對應的外掛程式。
Android
ARCore XR 外掛程式套件可讓您建構適用於 Android 裝置的擴增實境應用程式。如果應用程式指定 Android 裝置,請按照下列步驟在 Unity 專案中安裝該應用程式。請使用與 AR Foundation 套件相同的版本,以免發生相容性問題。
在專案中前往 Window > Package Manager。
選取「Packages」旁邊的「Unity Registry」。
在搜尋列中輸入「ARCore XR plugin」。
按一下「Install」。
前往 Edit > Project Settings。在 XR Plug-in Management 中開啟「Android」分頁,並啟用 ARCore。
iOS
ARKit XR 外掛程式可讓您建構適用於 iOS 裝置的擴增實境應用程式。如果應用程式指定 iOS 裝置,請按照下列步驟在 Unity 專案中安裝。請使用與 AR Foundation 套件相同的版本,以免發生相容性問題。
在專案中前往 Window > Package Manager。
選取「Packages」旁邊的「Unity Registry」。
在搜尋列中輸入「ARKit XR plugin」。
按一下「Install」。
前往 Edit > Project Settings。在 XR Plug-in Management 中開啟「iOS」分頁,並啟用 ARKit。
設定 AR 工作階段,並將 AR Foundation 元件新增至場景
場景需要 AR 工作階段才能啟用 AR 程序,例如動作追蹤、環境理解和光照評估。您需要下列遊戲物件才能支援 AR 工作階段:
AR Foundation 4.x
AR Session:控管 AR 體驗的生命週期。
AR Session Origin:將 AR 座標轉換為 Unity 世界座標。
新增遊戲物件前,請先刪除預設的 Main Camera。這會由 AR Session Origin 中的新的 AR Camera 取代。
在場景中新增 AR 遊戲物件:在 Hierarchy 窗格上按一下滑鼠右鍵,然後選取 XR。新增 AR Session 和新的 AR Session Origin 遊戲物件。
AR Foundation 5.x
AR Session:控管 AR 體驗的生命週期。
XR Origin:將 AR 座標轉換為 Unity 世界座標。
新增遊戲物件前,請先刪除預設的 Main Camera。這會由 XR Origin 中的新的 AR Camera 取代。
在場景中新增 AR 遊戲物件:在 Hierarchy 窗格上按一下滑鼠右鍵,然後選取 XR。新增 AR Session 和新的 XR Origin 遊戲物件。
調整播放器設定
Android
- 前往 File > Build Settings 以開啟 Build Settings 視窗。
- 在「Platform」下方,選擇「Android」,然後點選「Switch Platform」。
- 按一下「Player Settings」。
套用下列變更:
Player Settings > … 值 Other Settings > Rendering 取消勾選「Auto Graphics API」。
如果 Vulkan 列在 Graphics APIs 底下,由於 ARCore 不支援 Vulkan,請移除。Other Settings > Package Name 請使用 Java 套件名稱格式建立專屬的應用程式 ID。
例如,使用com.example.helloAR
。Other Settings > Minimum API Level 如要建構 AR 必要應用程式,請指定 Android 7.0 'Nougat' (API Level 24) or higher。
如要建構 AR Optional 應用程式,請指定 Android API Level 19 or higher。Other Settings > Scripting Backend 請選取 IL2CPP (而不是 Mono),允許在下一個步驟啟用 ARM64 支援功能。 開發期間:
- 使用 Mono + 32 位元 (ARMv7)
- 安裝 FAT (32 位元 + 64 位元) ARCore APK
運送至 Play 商店時:
- 使用 IL2CPP
- 啟用 32 位元 (ARMv7) 和 64 位元 (ARM64) 兩者,以符合 Play 商店的 64 位元規定
- 選用 (2018.3 以上版本支援):在 Build Settings 中啟用 Android App Bundles
Other Settings > Target Architectures 為符合 Google Play 64 位元規定,請啟用 ARM64 (64 位元 ARM)。讓 ARMv7 (32 位元 ARM) 保持啟用狀態,以便支援 32 位元裝置。
iOS
- 前往 File > Build Settings 以開啟 Build Settings 視窗。
- 在「Platform」下方,選擇「iOS」,然後點選「Switch Platform」。
- 按一下「Player Settings」。
進行下列設定:
Player Settings > … 值 Other Settings > Bundle Identifier 請以反向 DNS 格式新增應用程式名稱。
例如,請使用com.mycompany.myapp
。Other Settings > Camera usage description 輸入 AR 使用說明,例如 ARKit。 Other Settings > Target minimum iOS version 11.0以上 Other Settings > Architecture ARM64
後續步驟
- 開始使用選用的 ARCore Extensions 套件,這個套件為 AR Foundation 架構提供額外的 ARCore 功能。
- 使用 Unity 的 AR Foundation 建立 AR 遊戲 (程式碼研究室)。