在 EasyAR 項目中啓用 AR Foundation
如果需要啓用 EasyAR 的 AR Foundation 支持,或使用 AR Foundation 的其它功能,需要正確安裝配置 AR Foundation。以下內容介紹如何完成這些操作。
開始之前
- 閱讀 EasyAR 對 Unity XR 框架的支持 瞭解 EasyAR 對 Unity XR 框架的支持情況,以及在什麼情況下可以考慮使用 AR Foundation。
AR Foundation 版本兼容性
EasyAR 支持 AR Foundation 5 或更新版本。
重要事項
AR Foundation 的支持是通過自定義相機實現的。
在自定義相機或頭顯上使用試用產品(個人版 license、試用版 XR license 或試用版 Mega 服務等)時,EasyAR Sense 每次啓動後會在 100 秒(Mega 用戶可經由 EasyAR 商務在審批後調整時間長度)後停止響應。使用付費版本的 EasyAR Sense 和付費的 EasyAR Mega 服務沒有這個限制。
安裝 AR Foundation
建議參考 AR Foundation 官方文檔 來安裝 AR Foundation。閱讀前注意選擇對應的文檔版本。
Unity 2022 及更新版本
如果工程中未安裝過 XR 相關插件,需要在 Project Settings > XR Plug-in Management 中,點擊 Install XR Plugin Management 按鈕來安裝 XR Plug-in Management 並等待安裝完成。

如果需要在 Android 平臺使用 AR Foundation,在 Android 標籤下勾選 Google ARCore 並等待安裝完成。

如果需要在 iOS 平臺使用 AR Foundation,在 iOS 標籤下勾選 Apple ARKit 並等待安裝完成。

如果需要在 visionOS 平臺使用 AR Foundation,需要閱讀 Vision Pro 工程配置。
提示
建議保持 Initialize XR On Startup 處於勾選狀態,以確保 AR Foundation 能夠在默認時間點初始化。
安裝完成後,打開 Package Manager 窗口,可以看到 AR Foundation 以及對應平臺的插件會出現在已安裝的包列表中。注意這些包的版本號應完全一致。

重要事項
在安裝和更新 AR Foundation 時,需要確保 Google ARCore XR Plugin 和 Apple ARKit XR Plugin 版本與 AR Foundation 版本完全一致。版本不匹配可能會導致運行時錯誤或功能異常。
Unity 2021
在 Unity 2021 版本中,需要手動編輯 Packages/manifest.json 文件來指定版本,參考 官方文檔。
比如,如果需要安裝 AR Foundation 5.2.0 版本並在 Android 和 iOS 平臺使用,要確保 Packages/manifest.json 文件中包含以下內容:
{
"dependencies": {
...
"com.unity.xr.arcore": "5.2.0",
"com.unity.xr.arfoundation": "5.2.0",
"com.unity.xr.arkit": "5.2.0",
...
}
}
配置 XR Plug-in
在使用 EasyAR 時,通常 ARCore 的存在並不是必需的。因此應配置 ARCore 爲可選,以避免在不支持 ARCore 的設備上應用無法正常運行。
在 Project Settings > XR Plug-in Management > ARCore 中,將 Requirement 和 Depth 都設置爲 Optional

注意
如果把 Requirement 設置爲 Required,並在不支持 ARCore 的設備上安裝了打包後的應用,設備會錯誤地報告 ARCore 是可用的並以 ARCore 運行。這會造成一個假象,似乎這些設備正在運行 ARCore 並且運行不正常(黑屏或其它異常情況),但這是錯誤的。
出現這個現象的原因是由於 Google Play 商店阻止在不受支持的設備上安裝標記 ARCore 爲必需的應用,所以這些應用總是假設它們正在受支持的設備上運行。
正常配置下,這些設備會在 session 組裝時判斷 ARCore 不受支持並使用 EasyAR 的功能。
如有需要,也可以參考以下官方文檔來進一步配置 ARCore 和 ARKit。閱讀前注意選擇對應的文檔版本。
配置 Universal Render Pipeline
如果當前工程在使用 URP,需要配置 URP 資產。如未正確配置,AR Foundation 的攝像機背景圖可能無法正確渲染。
首先確保已經正確配置 EasyAR 的 URP Renderer Feature,參考 EasyAR 的 Universal Render Pipeline 配置。
然後在Renderer Features 列表中添加 ARBackgroundRendererFeature

與 EasyAR 的 URP Renderer Feature 配置一樣,需要關注 Project Settings > Quality 中不同平臺的配置,確保在所有需要使用 AR Foundation 的平臺上都使用了正確配置了 ARBackgroundRendererFeature 的 URP 資產。
另外也可以參考 AR Foundation 官方的 URP 配置文檔 進行配置,閱讀前注意選擇對應的文檔版本。
附註
EasyAR 的 Universal Render Pipeline 配置 仍是需要的,這樣才能確保在不支持 AR Foundation 的設備上使用 EasyAR 接口的相關功能渲染仍能正常。
啓用 EasyAR AR Foundation 支持
在 Project Settings > EasyAR > Sense 中,確保 Unity XR > AR Foundation Support 選項被啓用。該選項是默認開啓的。

修改該選項會觸發腳本重新編譯,需要等待腳本編譯完成修改纔會生效。如果 Unity 因爲某種原因未正常觸發編譯,可以關閉 Unity,刪除 Library/ScriptAssemblies 文件夾來強制 Unity 重新編譯腳本。
提示
如果 EasyAR 與工程中的 AR Foundation 不兼容,且沒有同時使用 EasyAR 和 AR Foundation 的需求,可以關閉該選項。
後續步驟
- 瞭解 EasyAR 項目中的 AR Foundation 場景配置和用法
- 瞭解如何根據設備支持情況 自動切換 AR Foundation