EasyAR配置
EasyAR配置頁面可從Unity菜單EasyAR > Sense > Configuration或Edit > Project Settings > EasyAR進入。

這裡包含所有對EasyAR Sense Unity Plugin的全局配置

啟動時初始化
在啟動時初始化EasyAR。通常建議保持這個選項打開。
如果關閉該選項,需要手動初始化EasyAR Sense,具體方法可以參考 初始化EasyAR Sense 。
EasyAR Sense License
EasyAR Sense License 相關設定。
LicenseKey
EasyAR Sense License Key。使用 EasyAR 功能必須填寫可用的 license。
僅當使用介面手動初始化 EasyAR Sense 時可留空。
附註
在頭戴式顯示裝置(Vision Pro、XREAL、Pico、Rokid 等)裝置上使用時,需要使用 EasyAR XR License。
附註
在自訂相機或頭顯上使用試用產品(個人版 license、試用版 XR license 或試用版 Mega 服務等)時,EasyAR Sense 每次啟動後會在 100 秒(Mega 用戶可經由 EasyAR 商務在審批後調整時間長度)後停止響應。使用付費版本的 EasyAR Sense 和付費的 EasyAR Mega 服務沒有這個限制。
Verify when build
在構建 Unity 工程時驗證 license Key。
當此選項開啟時,Unity 專案建構過程會驗證 license Key。若 license 在建構平台上無效,或不包含 Unity 播放器設定中設定的套件名稱,建構過程將會失敗。若需使用其他地方設定的 license key,或需在 Unity 建構過程後修改套件名稱,可關閉此選項。
庫變種
EasyAR Sense庫變種配置。
EasyAR Sense 通常有多種變種,其不同變種的功能有差異。這裡列出插件中集成的庫變種對比。
| Variant | EasyAR Sense 變種名稱 | 功能差異 | 其它特殊性 |
|---|---|---|---|
Normal |
Community/Enterprise | 不含錄屏及慣導 | |
Full |
CommunityFull/EnterpriseFull | 包含慣導及另外一些 Mega 功能 | 庫文件體積較大 |
VideoRecording |
CommunityR | 包含錄屏功能(僅 Android) |
提示
一些 Unity 中無法使用的變種未列入在內,比如 iOS 的 CommunityR 變種。
預設值:
- 未導入 EasyAR Mega 支援包:
Normal - 導入 EasyAR Mega 支援包:
Full
推薦配置:
Full:使用 EasyAR Mega 或使用慣導功能Normal:追求最小的包體大小,且不使用 EasyAR Mega 或慣導支援VideoRecording:需要使用錄屏功能(僅限 Android)
權限
應用權限配置。通常建議保持默認。
除相機權限外,其它權限配置不可更改,由其它功能配置所決定。
| 權限 | 是否可改 | 啟用條件 | 權限說明 |
|---|---|---|---|
Camera |
是 | 相機權限,使用相機設備需要的權限 | |
AndroidMicrophone |
否 | Variant為VideoRecording | 麥克風權限,使用錄屏功能需要的權限 |
Location |
否 | 導入Mega支持包 | (fine)定位權限,使用EasyAR Mega需要的權限 |
Unity XR
Unity XR框架(AR Foundation等)相關配置。
AR Foundation支持
AR Foundation支持開關,建議保持打開。
在極個別情況下,比如需要使用AR Foundation 4或AR Foundation更新導致編譯出錯,可以關閉這個選項,但插件內所有與AR Foundation相關的功能將同時禁用。
附註
修改此選項之後腳本會自動重新編譯。
Unity XR自動切換
自動切換Unity XR(比如AR Foundation)物體的功能配置。
Editor:編輯模式選項Disable AR Session:存在 ARSession 時,編輯時禁用AR Foundation的ARSession。
Player:運行模式選項Enable:啟用運行時控制。注意:關閉該選項,編輯模式被禁用的組件在運行時不會被恢復。Enable If Desktop:在Windows/Mac上啟用。Enable If Mobile AR On Startup:切換器啟動時,如果移動AR(ARKit/ARCore)的loader是激活的,則啟用。通常這個選項需要XR Plug-in Management中的Initialize XR on Startup是選中的。Disable If Non Mobile AR Post Startup:切換器啟動時,如果存在移動AR(ARKit/ARCore)之外的其它loader,但沒有任何一個loader是激活的,則禁用。通常這個選項會在XR Plug-in Management中的Initialize XR on Startup未選中時被使用。Restore AR Session When Disabled:功能禁用時,恢復(啟用)所有被禁用的AR Foundation的ARSession(無論它是否由EasyAR所禁用)。這個選項通常用於恢復編輯時被禁用的組件。
詳細功能說明可參考 Unity XR自動切換 。
Mega
EasyAR Mega功能配置。
Mega Block/Landmark支持
是否啟用Mega Block/Landmark支持。
該選項在導入com.easyar.mega後會默認開啟,未導入時默認關閉。
慣導相機設備支持
只讀選項,顯示當前配置下慣導功能是否可用。
如果顯示信息不符合需求,需要視情況修改Lib Variants選項。
ONNX支持
只讀選項,顯示當前配置下ONNX運行時信息。
如果顯示信息不符合需求,需要視情況修改Lib Variants以及ONNX Runtime (Bundled)選項。
Mega Block > 定位服務訪問 [全局]
全局Mega Block定位服務器配置。
Mega Landmark > 定位服務訪問 [全局]
全局Mega Landmark定位服務器配置。
空間地圖
EasyAR空間地圖功能配置。
服務訪問 [全局]
全局稀疏地圖服務器配置。
圖像跟蹤
EasyAR圖像跟蹤功能配置。
目標Gizmo
編輯器下ImageTarget的Gizmos配置。
打開這些選項將會在Unity Editor中顯示對應gizmo,如果場景中該類target過多,可能會影響編輯器中的啟動性能。在設備上運行時的性能不會受到影響。
Enable Image File:開啟 ImageTargetController.Source 類型為 ImageTargetController.ImageFileSourceData 的target的Gizmos。Enable Target Data File:開啟 ImageTargetController.Source 類型為 ImageTargetController.TargetDataFileSourceData 的target的Gizmos。Enable Target:開啟 ImageTargetController.Source 類型為 ImageTargetController.TargetSourceData 的target的Gizmos。Enable Texture 2D:開啟 ImageTargetController.Source 類型為 ImageTargetController.Texture2DSourceData 的target的Gizmos。
雲識別(CRS) > 服務訪問 [全局]
全局雲識別服務器配置。
物體跟蹤
EasyAR物體跟蹤功能配置。
目標Gizmo
編輯器下ObjectTarget的Gizmos配置。
Enable:開啟Gizmos。
第三方庫
第三方庫配置。
ARCore SDK
ARCore SDK 配置。
ARCore 提供了在部分 Android 設備上的運動跟蹤能力,可以閱讀 運動跟蹤與 EasyAR 功能 來了解 EasyAR 功能與運動跟蹤的關係,以及是否需要和什麼時候需要使用 ARCore。
AR Foundation Or Optional:隨 EasyAR 或AR Foundation一起分發的 ARCore SDK 將會被包含在應用中,根據 ARCore XR Plugin 的設置決定。一般情況下推薦使用這個選項,它會自動處理AR Foundation的情況。Optional:ARCore 功能在支持 ARCore 並安裝了 Google Play Services for AR 的設備上可以使用。Required:應用將只能在支持 ARCore 並安裝了 Google Play Services for AR 的設備上運行。External:如果在使用AR Foundation或其它 ARCore SDK 分發,可以使用這個選項。這樣隨 EasyAR 一起分發的 ARCore SDK 將不會使用。也可以使用這個選項來完全排除 ARCore SDK 在應用中的使用。
注意
如果把 ARCore SDK 設置為 Required,或是在 AR Foundation 的 ARCore 配置中將 Requirement 設置為 Required,並在不支持 ARCore 的設備上安裝了打包後的應用,設備會錯誤地報告 ARCore 是可用的並以 ARCore 運行。這會造成一個假象,似乎這些設備正在運行 ARCore 並且運行不正常(黑屏或其它異常情況),但這是錯誤的。
出現這個現象的原因是由於 Google Play 商店阻止在不受支持的設備上安裝標記 ARCore 為必需的應用,所以這些應用總是假設它們正在受支持的設備上運行。
正常配置下,這些設備會在 session 組裝時判斷 ARCore 不受支持並使用 EasyAR 的功能。
關於 Optional 和 Required 的詳細說明及上線 Google Play Store 應用需要做的其它配置可以參考 Google 的說明(中國大陸,國際)。
附註
在 EasyAR Sense Unity Plugin 中,ARCore 的支持所需的庫文件和配置已經在插件包中,但要在手機上運行,仍需在手機上安裝 Google Play Services for AR 。
有三種不同來源的 ARCore SDK 可以使用:
使用隨插件分發的 ARCore SDK
插件內集成了一個 ARCore SDK 版本,詳細信息可以參考 ARCore、AR Engine 版本兼容性。在使用 EasyAR 的 ARCore 封裝時,可以不另外導入 AR Foundation。
使用 AR Foundation 的 ARCore SDK
如果需要使用 AR Foundation 的 ARCore SDK,可以參考 Google 的說明(中國大陸,國際)進行配置,這時
ARCore SDK選項需要選擇AR Foundation Or Optional或External。使用其它 ARCore SDK
如果有其它第三方插件或項目內有 ARCore SDK 的分發,也可以使用這些 ARCore SDK。這時
ARCore SDK選項需要選擇External,並根據具體插件或項目要求進行配置。
Warn 32-bit-only ARCore-enabled build
根據 Google 的說明,在 arm64 的設備上運行僅有 armv7 庫文件的程序,ARCore 不會正常工作。在打包時如果未選擇 ARM64 會彈出警告:

這時需要修改項目配置,使用 IL2CPP 編譯並選擇 ARM64 支持。

注意
如確有需要,可以選擇 Continue and don't warn me again,或者關閉該選項,這將關閉打包時的檢查。關閉檢查只是在打包時不彈出提示,但運行時在一些設備上將有可能出現異常,包括但不限於崩潰或黑屏等。
AR Engine SDK
AR Engine SDK 配置。
AR Engine 提供了在部分 Android 設備上的運動跟蹤能力,可以閱讀 運動跟蹤與 EasyAR 功能 來了解 EasyAR 功能與運動跟蹤的關係,以及是否需要和什麼時候需要使用 AR Engine。
AREngineInterop:AREngineInterop 可用。隨 EasyAR 一起分發的 AR Engine SDK 將會被包含在應用中。External:AREngineInterop 可用。隨 EasyAR 一起分發的 AR Engine SDK 將不會使用。Disabled:AREngineInterop 不可用。隨 EasyAR 一起分發的 AR Engine SDK 將不會使用。所有與 AR Engine 有關的功能將被禁用。
ONNX Runtime (Bundled)
是否使用捆綁的 ONNX 運行時。僅在 Lib Variant 為 Full 時有效。
如需使用不同版本的 ONNX,可用從 ONNX 官方獲取更新版本並關閉該選項。使用自己編譯的二進制不兼容的 ONNX 將導致未知錯誤。
Unity的應急方案
針對Unity bug或不合理行為的應對方案。
Generatexmldoc
在腳本重新載入時產生 XML 文件,使 API 文件的 intelliSense 能夠運作。
Urp17rg_dx11_ruinedscene
解決 URP 17 Render Graph DX11 場景渲染毀損問題。Unity 6.2 及更新版本中該選項已關閉。
Urp17rg_ios_glitches_partial
部分解決 Unity Issue UUM-87787。
問題簡述:當從 EasyAR 取得相機紋理(類似 ImageTracking_Coloring3D 範例及 ARSession 工作流程(CameraDevice) 範例中的用法),在 iOS/Mac 裝置上可觀察到視覺故障與偽影。我們已在純 Unity 套件中重現此問題並回報給 Unity:Glitches on iOS with AR Camera Image Rendering (URP 17 render graph)。問題進展可關注 Unity Issue UUM-87787 更新以及 Unity 未來版本的發布日誌。