EasyAR Configuration
The EasyAR configuration page can be accessed from the Unity menu EasyAR > Sense > Configuration or Edit > Project Settings > EasyAR.

This contains all the global configurations for the EasyAR Sense Unity Plugin.

Initialize On Startup
Initialize EasyAR on startup. It is generally recommended to keep this option enabled.
If this option is disabled, you need to initialize EasyAR Sense manually. For specific methods, refer to Initializing EasyAR Sense.
EasyAR Sense License
EasyAR Sense License related configurations.
LicenseKey
EasyAR Sense License Key. A valid license is required to use EasyAR features.
Can be left empty only when manually initializing EasyAR Sense via the interface.
Note
When using on head-mounted display devices (Vision Pro, XREAL, Pico, Rokid, etc.), an EasyAR XR License is required.
Note
When using trial products (such as personal edition license, trial XR license, or trial Mega service) on custom cameras or headsets, EasyAR Sense will stop responding 100 seconds after each startup (the duration can be adjusted via EasyAR Business upon approval for Mega users). Using the paid version of EasyAR Sense and the paid EasyAR Mega service does not have this restriction.
Verify When Build
Verify the license Key during the Unity project build process.
When this option is enabled, the Unity project build process will verify the license Key. If the license is invalid on the build platform or does not include the package name set in Unity Player Settings, the build process will fail. If you need to use a license key configured elsewhere or need to modify the package name after the Unity build process, you can disable this option.
Lib Variants
Configuration for EasyAR Sense library variants.
EasyAR Sense usually has multiple variants, and the functions of different variants vary. Here is a comparison of the library variants integrated in the plugin.
| Variant | EasyAR Sense Variant Name | Functional Differences | Other Special Features |
|---|---|---|---|
Normal |
Community/Enterprise | Does not include screen recording and inertial navigation | |
Full |
CommunityFull/EnterpriseFull | Includes inertial navigation and some other Mega features | The library file size is large |
VideoRecording |
CommunityR | Includes screen recording function (only for Android) |
Tip
Some variants that cannot be used in Unity are not listed, such as the CommunityR variant for iOS.
Default values:
- If the EasyAR Mega support package is not imported:
Normal - If the EasyAR Mega support package is imported:
Full
Recommended configurations:
Full: Use EasyAR Mega or the inertial navigation functionNormal: Pursue the smallest package size and do not use EasyAR Mega or inertial navigation supportVideoRecording: Need to use the screen recording function (only for Android)
Permissions
Configuration for app permissions. It is generally recommended to keep the default settings.
Except for the camera permission, other permission configurations cannot be changed and are determined by other function configurations.
| Permission | Changeable | Enabled Condition | Permission Description |
|---|---|---|---|
Camera |
Yes | Permission for the camera device, required for using the camera. | |
AndroidMicrophone |
No | Variant is VideoRecording | Permission for the microphone, required for using the screen recording function. |
Location |
No | Import the Mega support package | (fine) Location permission, required for using EasyAR Mega. |
Unity XR
Configurations related to the Unity XR framework (such as AR Foundation, etc.).
AR Foundation Support
Switch for AR Foundation support. It is recommended to keep it enabled.
In very rare cases, such as when using AR Foundation 4 or an AR Foundation update causes compilation errors, this option can be disabled, but all AR Foundation-related functions within the plugin will be disabled simultaneously.
Note
The script will be recompiled automatically after modifying this option.
Unity XR Auto Switch
Function configuration for automatically switching Unity XR (such as AR Foundation) objects.
Editor: Options for the edit modeDisable AR Session: When there is a ARSession, disable the ARSession of AR Foundation during editing.
Player: Options for the runtime modeEnable: Enable runtime control. Note: If this option is disabled, components disabled in the edit mode will not be restored during runtime.Enable If Desktop: Enable on Windows/Mac.Enable If Mobile AR On Startup: Enable when the switcher starts up if the loader for mobile AR (ARKit/ARCore) is active. Usually, this option requiresInitialize XR on Startupin XR Plug-in Management to be selected.Disable If Non Mobile AR Post Startup: Disable when the switcher starts up if there are loaders other than mobile AR (ARKit/ARCore) and no loader is active. Usually, this option is used whenInitialize XR on Startupin XR Plug-in Management is not selected.Restore AR Session When Disabled: When the function is disabled, restore (enable) all disabled AR Foundation ARSessions (regardless of whether they are disabled by EasyAR). This option is usually used to restore components disabled during editing.
For detailed function descriptions, refer to Unity XR Auto Switch.
Mega
Function configuration for EasyAR Mega.
Mega Block/Landmark Support
Whether to enable Mega Block/Landmark support.
This option is enabled by default after importing com.easyar.mega and disabled by default if not imported.
InertialCameraDevice Support
Read-only option that shows whether the inertial navigation function is available under the current configuration.
If the displayed information does not meet the requirements, you need to modify the Lib Variants option as appropriate.
ONNX Support
Read-only option that shows ONNX runtime information under the current configuration.
If the displayed information does not meet the requirements, you need to modify the Lib Variants and ONNX Runtime (Bundled) options as appropriate.
Mega Block > Localization Service Access [Global]
Global configuration for the Mega Block localization server.
Mega Landmark > Localization Service Access [Global]
Global configuration for the Mega Landmark localization server.
Spatial Map
Function configuration for EasyAR spatial map.
Service Access [Global]
Global configuration for the sparse map server.
Image Tracking
Function configuration for EasyAR image tracking.
Target Gizmo
Configuration for the Gizmos of ImageTarget in the editor.
Enabling these options will display the corresponding gizmo in the Unity Editor. If there are too many targets of this type in the scene, it may affect the startup performance in the editor. The performance during device runtime will not be affected.
Enable Image File: Enable the gizmos for targets of type ImageTargetController.Source ImageTargetController.ImageFileSourceData.Enable Target Data File: Enable the gizmos for targets of type ImageTargetController.Source ImageTargetController.TargetDataFileSourceData.Enable Target: Enable the gizmos for targets of type ImageTargetController.Source ImageTargetController.TargetSourceData.Enable Texture 2D: Enable the gizmos for targets of type ImageTargetController.Source ImageTargetController.Texture2DSourceData.
Cloud Recognition (CRS) > Service Access [Global]
Global configuration for the cloud recognition server.
Object Tracking
Function configuration for EasyAR object tracking.
Target Gizmo
Configuration for the Gizmos of ObjectTarget in the editor.
Enable: Enable the gizmos.
Third-Party Libraries
Third - party library configuration.
ARCore SDK
ARCore SDK configuration.
ARCore provides motion tracking capabilities on some Android devices. You can read [Motion Tracking and EasyAR Features](~/develop/motion - tracking/motion - tracking - and - easyar.md) to understand the relationship between EasyAR features and motion tracking, as well as whether and when you need to use ARCore.
AR Foundation Or Optional: The ARCore SDK distributed with EasyAR orAR Foundationwill be included in the application, depending on the settings of the ARCore XR Plugin. In general, this option is recommended as it will automatically handle theAR Foundationsituation.Optional: The ARCore feature can be used on devices that support ARCore and have Google Play Services for AR installed.Required: The application will only run on devices that support ARCore and have Google Play Services for AR installed.External: If you are usingAR Foundationor other ARCore SDK distributions, you can use this option. In this way, the ARCore SDK distributed with EasyAR will not be used. You can also use this option to completely exclude the use of the ARCore SDK in the application.
Caution
If you set ARCore SDK to Required, or set Requirement to Required in the ARCore configuration of AR Foundation, and install the packaged application on a device that does not support ARCore, the device will incorrectly report that ARCore is available and run with ARCore. This will create an illusion that these devices are running ARCore and not working properly (black screen or other abnormal situations), but this is wrong.
The reason for this phenomenon is that the Google Play Store prevents applications marked as requiring ARCore from being installed on unsupported devices, so these applications always assume that they are running on supported devices.
Under normal configuration, these devices will determine that ARCore is not supported during session assembly and use EasyAR's features.
For detailed instructions on Optional and Required and other configurations required for applications to be launched on the Google Play Store, you can refer to Google's instructions ([Mainland China](https://developers.google.cn/ar/develop/java/enable - arcore), [International](https://developers.google.com/ar/develop/java/enable - arcore)).
Note
In the EasyAR Sense Unity Plugin, the library files and configurations required for ARCore support are already included in the plugin package, but to run on a mobile phone, you still need to install Google Play Services for AR on the phone.
There are three different sources of ARCore SDKs that can be used:
Use the ARCore SDK distributed with the plugin
A version of the ARCore SDK is integrated within the plugin. For detailed information, you can refer to [ARCore, AR Engine Version Compatibility](../../motion - tracking/3rdparty - compatibility.md). When using EasyAR's ARCore wrapper, you do not need to import AR Foundation separately.
Use the ARCore SDK of AR Foundation
If you need to use the ARCore SDK of AR Foundation, you can refer to Google's instructions ([Mainland China](https://developers.google.cn/ar/develop/java/enable - arcore), [International](https://developers.google.com/ar/develop/java/enable - arcore)) for configuration. At this time, the
ARCore SDKoption needs to be set toAR Foundation Or OptionalorExternal.Use other ARCore SDKs
If there are other third - party plugins or ARCore SDK distributions within the project, you can also use these ARCore SDKs. At this time, the
ARCore SDKoption needs to be set toExternal, and the configuration should be made according to the requirements of the specific plugin or project.
Warn 32 - bit - only ARCore - enabled build
According to Google's instructions, when running a program with only armv7 library files on an arm64 device, ARCore will not work properly. If you do not select ARM64 during packaging, a warning will pop up:

At this time, you need to modify the project configuration, use IL2CPP for compilation, and select ARM64 support.

Caution
If necessary, you can select Continue and don't warn me again, or turn off this option, which will turn off the check during packaging. Turning off the check only prevents the prompt from popping up during packaging, but there may be exceptions during runtime on some devices, including but not limited to crashes or black screens.
AR Engine SDK
AR Engine SDK configuration.
AR Engine provides motion tracking capabilities on some Android devices. You can read [Motion Tracking and EasyAR Features](~/develop/motion - tracking/motion - tracking - and - easyar.md) to understand the relationship between EasyAR features and motion tracking, as well as whether and when you need to use AR Engine.
AREngineInterop: AREngineInterop is available. The AR Engine SDK distributed with EasyAR will be included in the application.External: AREngineInterop is available. The AR Engine SDK distributed with EasyAR will not be used.Disabled: AREngineInterop is not available. The AR Engine SDK distributed with EasyAR will not be used. All functions related to AR Engine will be disabled.
ONNX Runtime (Bundled)
Whether to use the bundled ONNX runtime. It is only valid when Lib Variant is Full.
If you need to use a different version of ONNX, you can obtain an updated version from the ONNX official website and turn off this option. Using a self - compiled ONNX binary that is not compatible will result in unknown errors.
Workaround For Unity
Solutions for Unity bugs or unreasonable behaviors.
GenerateXMLDoc
Generates XML documentation during script reload to enable API doc intelliSense.
URP17RG_DX11_RuinedScene
Workaround for URP 17 Render Graph DX11 scene rendering corruption. Disabled in Unity 6.2+.
URP17RG_IOS_Glitches_Partial
Partial workaround for Unity Issue UUM-87787.
Issue summary: When obtaining camera textures from EasyAR (as used in examples like ImageTracking_Coloring3D and ARSession workflow (CameraDevice)), visual glitches and artifacts are observed on iOS/Mac devices. We have reproduced this issue in a pure Unity package and reported it to Unity: Glitches on iOS with AR Camera Image Rendering (URP 17 render graph). Track progress via Unity Issue UUM-87787 and future Unity release notes.