Unity 的 AR Foundation 是一個跨平台架構,可讓您編寫擴增實境體驗,然後針對 Android 或 iOS 裝置進行建構,無須進行額外變更。您可以透過 Unity 的 AR Foundation 套件取得這個架構。
ARCore 的 AR Foundation ARCore Extensions 套件可新增額外功能,方便您在應用程式中使用 Cloud Anchors、相機設定篩選器、錄製與播放等功能。
遷移或升級現有專案
- 如要將現有專案從 Unity 的 (已淘汰) ARCore SDK 遷移至 Unity 的 AR Foundation 和 ARCore 擴充功能 (選用),請參閱遷移指南。
- 如要從舊版 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」(ARCore XR 外掛程式)。
按一下「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 外掛程式」。
按一下「Install」。
前往「Edit > Project Settings」。在 XR Plug-in Management 中開啟 iOS 分頁,然後啟用 ARKit。
設定 AR 工作階段並將 AR Foundation 元件新增至場景
情境需要 AR 工作階段才能啟用 AR 流程,例如動作追蹤、環境理解和亮度估計。您需要下列遊戲物件才能支援 AR 工作階段:
AR Session:控管 AR 體驗的生命週期。
AR Session Origin:將 AR 座標轉換為 Unity 世界座標。
新增遊戲物件之前,請先刪除預設的 Main Camera。它會由 AR Session Origin 中的新 AR Camera 取代。
將新的 AR 遊戲物件新增至場景:在 Hierarchy 窗格上按一下滑鼠右鍵,然後選取 XR。新增 AR Session 和新的 AR Session 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 選填應用程式,請指定 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 遊戲 (程式碼研究室)。