EasyAR Sense Unity Plugin Release Notes
We are pleased to announce the release of EasyAR Sense Unity Plugin 4000. This version marks that EasyAR has a complete API and up-to-date device support. Meanwhile, new versions will be released more frequently than before.
Download EasyAR Sense Unity Plugin 4000 to enjoy these new features and improvements.
Historical Versions
Version 4003.1.1
Release date: 2026-09-07
- 🚀 Added EasyAR Sense Unity Plugin Meta XR extension, supporting Meta Quest 3/3S
- 🐛 Fixed the issue that input extensions could not be used when DeviceOriginType was OriginType.External
- 🔧 AR session no longer fails to start when the Mega cloud service is configured as disabled
Version 4003.1.0
Release Date: 2026-08-20
- ✨ Added support for Mega Go
- ✨ Added support for the ARSession.InputFrameUpdate interface on headsets to obtain non-real-time camera data when running on headsets
- 🐛 Fixed the issue that playing EIF when starting the session may cause Mega positioning failure
- ⬆️ Updated EasyAR Sense to 4.10.0
- ⬆️ Updated the EasyAR Sense Unity Plugin PICO extension to 4000.1.0
- ✨ Added support for PICO 4 Ultra user devices, PICO Space Pro, and is compatible with future new PICO devices
- 💥 Replaced the PICO enterprise device interface with the user device interface. Enterprise authorization from PICO is no longer required to run on enterprise devices
Version 4003.0.0
Release Date: 2026-07-01
- 🚀 Brand-new Mega development process
- ✨ The Mega function interface and development process are closer to traditional AR functions such as image tracking
- ✨ Added the MegaBlockController component to replace the node group previously generated by Mega Studio
- ✨ The session verification tool supports more practical Mega control options
- ✨ Use the global configuration switch to control the enablement of the Mega function
- 💥 No longer forcefully depend on
com.easyar.megaat runtime.com.easyar.megawill only provide editor and ema functions - 🔥 Removed the multi-block configuration option and the block root node. Blocks are independent of each other
- 🔥 Removed the editor test area of MegaTrackerFrameFilter. This function is completely replaced by the session verification tool
- 🐛 Fixed the problem that the scene is too dark when using the sample in Unity version 6 or higher
- 🐛 Fixed some script compilation errors in the Unity 6.4 URP environment
- 🐛 Fixed the problem that the modification of the advanced options of the MotionTrackerFrameFilter editor cannot be saved
- ⬆️ Updated the EasyAR Mega support package to 2.13.0
- 🚚 Split the original
com.easyar.megainto two packages, namelycom.easyar.mega(Mega support package) andcom.easyar.mega.studio(Mega Studio). Mega Studio no longer supports Unity development - 🚚 Moved some interfaces from the EasyAR.Mega.Scene namespace to the EasyAR.Mega namespace
- ✨ Supported the Mega international service
- ✨ Supported the panoramic preview function in the editor play mode
- ✨ Supported viewing block data in the prefab view
- ✨ Allowed blocks to rotate freely in the editor
- ✨ Forced to display the mesh boundary gizmo when loading fails
- 🔥 Removed support for block data generated by the mapping service version 9.3 and earlier
- 🔥 Removed support for the positioning service version 2.0 and earlier
- 🔥 Removed support for ema 0.3 - 0.4
- 🔥 Removed support for annotation nodes in the scene
- 🚚 Split the original
- ⬆️ Updated the EasyAR Sense Unity Plugin Extensions to 4000.0.1
- 🔧 Adjusted the Mega components in the sample scene
Version 4002.0.0
Release Date: 2026-05-18
- 🐛 Fixed the problem of failed Android packaging in Unity 6.4.4.
- 🔧 Adjusted some sample code.
- ⬆️ Updated EasyAR Sense to 4.9.0
Version 4001.0.0
Release Date: 2026-03-10
- 🐛 Fixed the numerical problem in the pose conversion from native to Unity. This problem may cause short-term pose jumps when using Mega on some devices, resulting in rapid flickering or jittering of the content. Fixing this problem may also solve other similar potential problems.
- 🔧 Adjusted some interfaces of MegaTrackerFrameFilter to adapt to the interface changes of EasyAR Sense
- ⬆️ Updated EasyAR Sense to 4.8.0
Version 4000.0.1
Release Date: 2025-11-14
- 🐛 Fixed: Solved the possible runtime
AndroidJavaExceptionexception triggered by the lack of static methods (loadLibraries,setupActivity) in the Android build with minify packaging enabled. This error would cause EasyAR to fail to run.
Version 4000.0.0
Release Date: 2025-10-20
Starting from this version, EasyAR Sense Unity Plugin will follow the package version control (using Semantic Versioning) required by Unity. Therefore, the version number will be different from that of EasyAR Sense, and the release frequency may also vary. This version of the plugin includes the official version of EasyAR Sense 4.7.0.
EasyAR Sense Unity Plugin 4000.0.0 has undergone significant changes, mainly concentrated in the following aspects:
- Changes in Unity and AR Foundation compatibility Starting from this version, EasyAR Sense Unity Plugin will only support Unity 2021.3 and later versions. Support for Unity 6 has also been improved. Meanwhile, AR Foundation support has been integrated into the plugin package. This version will only support AR Foundation 5 and later versions, and its usage has been greatly simplified. If AR Foundation components are added to the scene, the scene configuration and script code can remain unchanged regardless of whether AR Foundation is ultimately used after running.
- Up-to-date headset support, with support for multiple OST/VST headsets added After years of polishing with multiple enterprises in the industry, EasyAR's support for headsets has been standardized. Now you can support third-party headset devices through the EasyAR Sense Unity Plugin extension (some data interfaces may need to be provided by the headset manufacturer). This version has built-in support for Apple Vision Pro and XREAL Air2 Ultra. At the same time, it supports Pico 4 Ultra Enterprise and Rokid AR Studio through the EasyAR Sense Unity Plugin extension package. You can also obtain support extension packages for other devices from some of EasyAR's partners (such as Xrany).
- Improved Unity component interfaces and significantly optimized the ARSession workflow This is the first version that fully encapsulates EasyAR Sense functions through Unity components. ARSession has been greatly optimized and rewritten. Now you can easily determine the support for devices or functions, start or stop ARSession according to specific situations to switch ARSession or different AR functions at runtime. Meanwhile, you can also use ARSessionFactory to create ARSession and related components at runtime. This version also adds inertial navigation and 3DoF camera functions, which are mainly designed for EasyAR Mega but can also be used independently.
- Added multiple development and diagnostic tools This version adds a brand-new EIF recording and playback function. Although EIF recording and playback were also available in previous versions, using EIF has never been so easy. Now you can directly play eif and drive your scene using the diagnostic tool Session Validaion Tool in the Unity editor. Whether it is image tracking, spatial mapping, or EasyAR Mega, the running effects on the device can be restored on the computer. Now you can easily enable the eif recording function in the app using the runtime diagnostic panel EasyAR Diagnostics Panel, or switch the display of key status information of ARSession and its components at any time. Meanwhile, all samples in this version have been rewritten. Running the sample can directly show the ARSession status and the button for recording eif for easy use.
- EasyAR Mega tools are fully open This version integrates and releases Mega Studio 2.12. In the future, the plugin will be updated more frequently. The Mega tools on the Unity side will be gradually integrated into the plugin and released together with the regular plugin updates. In addition to the updates in the previous pre-release versions, this version will enable inertial navigation support by default, further greatly expanding the device support of EasyAR Mega. This version also includes support for the latest version of the EasyAR Mega Landmark service. You can apply for using EasyAR Mega through the EasyAR website page. The detailed update content is as follows:
Unity and AR Foundation compatibility changes:
- 🔧 Unity: supports Unity 2021.3 and later, including Unity 2022.x/Unity 6.x
- 🔥 Removed support for Unity 2019/Unity 2020
- 🔥 Removed gradle version check for Unity 2019
- 🔥 Removed the DisableARCoreAREngine option for Unity 2019
- ✨ Unity 6: full support for Unity 6
- ✨ Supports URP 17+ and Render Graph
- 🐛 Fixed: ARCore failure caused by ClassLoader behavior changes on Unity 6
- 🐛 Fixed: camera rendering failure when Render Scale is not 1
- 🐛 Unity 6 bug: visual glitches and artifacts can be observed on iOS/Mac devices. This only occurs when camera textures need to be acquired. We added partial mitigations but cannot fully eliminate it. It has been reported to Unity, see Unity Issue UUM-87787. In Unity 6.2 and later, this issue can be avoided by setting Render Scale in the Universal Render Pipeline Asset to a value outside 0.96-1.05.
- 🐛 Unity 6 bug: rendering is abnormal on Windows DX11. We added mitigations in Unity 6.0-6.1. Testing shows Unity 6.2 has fixed the issue.
- ✨ AR Foundation: supports AR Foundation 5 and later, greatly simplifying usage
- ✨ AR Foundation support has been merged into the plugin package, and no separate package import is needed anymore. It can be disabled through configuration options for special requirements.
- ✨ Supports reusing
Unity.XR.CoreUtils.XROriginas the origin of ARSession and reusing the Camera of XROrigin - ✨ Added the
Unity XR Auto Switchconfiguration option, which handles switching of Unity XR, including AR Foundation, objects by default - ✨ ARSession created through the EasyAR menu automatically includes and enables AR Foundation support by default
- ✨ Most samples now include AR Foundation support, while AR Foundation itself still needs to be manually imported and configured correctly
- 🔧 ARCore and ARKit can be controlled separately, and the priority between EasyAR built-in ARCore/ARKit and AR Foundation ARCore/ARKit can be controlled
- 🔥 Removed support for AR Foundation 4
- 🔥 Removed support for ARSessionOrigin, only XROrigin is supported
- 🔥 Removed proxy execution of the AR Foundation ARCore installation flow
- ✨ Fully compatible with Input System Package
Headset support keeps up with the times, with newly added support for multiple OST/VST headsets:
- 🚀 The head-mounted display device interface is stable and supports third-party integration
- ✨ Supports third-party device integration, requiring headset manufacturers to provide specific data interfaces
- ✨ Supports XROrigin and XR Interaction Toolkit
- ✨ Simplified and unified all headset samples, zero code, with feature switching support
- ✨ Supports fisheye camera input
- ✨ Supports custom camera input 3DOF data
- ✨ Added menu feature: Extensions, integrating all extension menu items
- 🐛 Fixed rendering anomalies when running DenseSpatialMap on some headsets
- 🔥 Removed old glasses samples such as ActionOne and BT350
- ✨ Built-in support for Apple Vision Pro
- ✨ Supports Metal, RealityKit, and Hybrid modes
- ✨ Supports visionOS >= 2.0 and visionOS 26
- ✨ Built-in support for XREAL Air2 Ultra, requiring XREAL SDK >= 3.1
- ✨ No need to import a separate support package
- ⚡ Optimized runtime effects on XREAL
- 🔥 Removed XREAL Light support
- ✨ Distributes support for other devices such as Pico and Rokid through EasyAR Sense Unity Plugin extensions
- ✨ Provides a reference template for third-party device integration,
com.easyar.sense.ext.hmdtemplate - ✨ Supports Pico 4 Ultra Enterprise, requiring PICO Unity Integration SDK >= 3.1
- ✨ Supports Rokid AR Studio, requiring Rokid Unity OpenXR Plugin >= 3.0.3
- ✨ These extensions will support multiple future versions of EasyAR Sense Unity Plugin
- ✨ Provides a reference template for third-party device integration,
- ✨ Supports EasyAR XR License
- 🔧 Using EasyAR on headsets requires EasyAR XR License and the first network connection must be available. The trial requires network access every time
Improved Unity component interfaces and greatly optimized the ARSession workflow:
- 🚀 Improved Unity component layer encapsulation
- ✨ Improved scene components, providing all EasyAR Sense features
- 🔥 Removed all EasyAR Sense layer interfaces encapsulated through components
- 🔥 Removed all internal interfaces
- ✨ ARSession: Rewritten and greatly optimized workflow
- ✨ Supports starting and stopping session at any time
- ✨ Supports automatic session startup control
- ✨ Supports switching session features and input sources without a black screen
- ✨ Simplifies device support judgment and provides it through a consistent interface
- ✨ Updates the device support lists of MotionTracker, ARCore, and AR Engine at startup
- ✨ Supports automatic session restart after the device list is updated
- ✨ Supports obtaining detailed session corruption information
- ✨ Added session internal state self-check
- 🔥 Removed ARComponentPicker. Its functionality is replaced by other session flows
- 🔥 Disallows multiple ARSession instances running at the same time
- ✨ ARSessionFactory: Provides runtime creation of ARSession and related components
- ✨ Supports creating the same session as the editor menu at runtime through ARSessionFactory
- ✨ Added Frame Source sorting feature, including menu item
- ✨ FrameSource: Added inertial navigation and 3DoF support
- ✨ Added InertialCameraDeviceFrameSource for inertial navigation support
- ✨ Added ThreeDofCameraDeviceFrameSource for cameras that support 3DoF
- ✨ Added menu feature: Frame Source by Transform Type, providing a list of all built-in FrameSource
- ⚡ Optimized Inspector options
- ✨ Other interface adjustments and feature updates
- ✨ Added the feature to create ImageTarget using Texture2D
- ✨ Added ImageMaterial for rendering Image type data, such as camera images or Target images
- ✨ Added ActiveController for controlling GameObject active and unifying related control logic
- ✨ Added feature to simulate screen rotation on desktop
- ✨ Added XROriginChildController to control object behavior under the Session origin
- 🔥 Removed WorldRootController
- 🔧 Split sparse spatial map interfaces into two different functional components, Builder and Tracker
- 🔧 Adjusted EasyARController, providing application/system-level static features
- 🔧 Unified Target component interfaces
- 🔧 Unified service access data interfaces
Added multiple development and diagnostic tools:
- 🚀 Added edit-time diagnostic tool: Session Validaion Tool
- ✨ Simplifies playing eif in any scene
- ✨ Supports controlling the eif playback flow
- ✨ Supports controlling the session flow
- 🚀 Added runtime diagnostic panel: EasyAR Diagnostics Panel
- ✨ Added Developer Mode switch. By default, tapping the screen 8 times turns Diagnostics Panel on and off, simplifying eif recording and issue feedback for online apps
- ✨ Supports custom Developer Mode switch, using custom interaction to toggle Diagnostics Panel
- ✨ Supports controlling eif recording
- ✨ Supports controlling session information display
- ✨ Supports controlling eed recording
- ✨ Added brand-new EIF recording and playback features
- ✨ FrameRecorder is automatically assembled into ARSession and no longer needs to be selected manually
- ✨ FrameRecorder automatically generates file names by default to support script-free use
- ✨ FramePlayer supports seek and speed adjustment for data recorded in the new format, with reduced file size
- 🔧 Supports using eif on a computer to drive scenes and AR features, not a new feature
- ✨ Added DiagnosticsController, unifying and optimizing diagnostic features
- ✨ Added categorized information display and control. By default, all error and warning information is displayed through UI
- ✨ Added display of key status information for ARSession and its components. By default, it is displayed through UI and updated every frame
- 🔧 Uses diagnostic features to simplify collection of issue feedback information
- 🔥 Removed GUIPopup
- 🔧 Optimized abnormal state behavior and error information display
- 🔧 Optimized error information when no frame source is available
- 🔧 In URP environments, when EasyAR is used instead of AR Foundation or headset rendering to render camera images, an incorrectly configured RendererFeature reports an error and interrupts ARSession execution
- 🔧 Modified Origin's default Active control policy so content sticks to the screen instead of disappearing when tracking is lost
- 🔧 When using trial products on custom cameras or headsets, all content is hidden when the time limit is reached to avoid misjudging the effect
- 🔧 Optimized configuration page content and options
- ✨ Supports selecting variants of the EasyAR Sense library
- 🔒 In the application permissions section, permissions other than camera permission can no longer be changed, and are determined by the EasyAR Sense library variant and whether Mega is enabled
- 🔧 Function and server configurations are grouped by EasyAR feature
- 🔧 Centrally manages third-party AR SDK configurations
- 🔧 Centrally manages Workaround configurations for Unity
EasyAR Mega tools are fully public:
- 🚀 Fully public, updated synchronously
- ✨ Integrated release of Mega Studio 2.12
- 🔧 Unity-side Mega tools will gradually be merged into the plugin. In the future, only the latest integrated package will be provided, but it will be released together with regular EasyAR Sense Unity Plugin updates
- 🔧 EasyAR Mega still needs to be applied for through the EasyAR website page and can be used only after approval
- ✨ Added support for EasyAR Mega Landmark
- ✨ Added support for 5DOF inertial navigation and enabled it by default, further greatly expanding EasyAR Mega device support
- ✨ Added support for using API Token to access Mega services
- 🔧 Optimized Mega effects and development experience, included in previous 4.7.x updates
- ✨ Supports 3DOF pure rotation mode and 0DOF mode, not enabled by default
- ✨ Added EditorCameraDeviceFrameSource for editor diagnostics, avoiding incorrect operation on phones caused by incomplete sample copying
- ✨ When recording old-version eif data while using Mega, FrameRecorder will automatically generate a .eif.json file
- 🔧 Replaced the degradation option for remote debugging with LocationInputMode
- 🔧 Split no-tracking mode into an independent component, which usually no longer needs to be used or noticed
- 🔧 Added the BlockRootSource option. Under the default configuration, forgetting to set BlockRoot will report an error
- 🔧 Adjusted the default behavior when localizing to multiple blocks, ensuring multiple blocks are not used by default
- 🔧 Adjusted some interface names
- 🔧 Throws clearer exceptions when Session contains Mega but cannot use it
- 🔧 Adjusted the minimum MotionTracker QualityLevel supported by Mega to Limited
- 🐛 Fixed a runtime error caused by incorrect escaping of CloudLocalizerStatus.WakingUp
- 🔧 Some optimizations and changes are listed in the EasyAR Sense changelog
Sample rewrite and optimization:
- ✨ Rewrote all sample
- ✨ Compatible with different Input System configurations
- ✨ Compatible with URP17+
- ✨ Compatible with using AR Foundation
- 🔧 Compatible without using AR Foundation
- 🔧 Keeps a small number of sample without AR Foundation support
- ⚡ Optimized scripts and interface calls
- 🚚 Some sample have been renamed
- 🔧 Replaced resources such as models and videos in sample
- ⚡ Reduced use of streaming assets, using and importing them only in sample that demonstrate specific features
- ✨ Uses Texture2D to create ImageTarget
- ✨ Added new feature and API demonstrations
- ✨ Added Workflow_ARSession sample for learning the basic session flow, device support, and more
- ✨ Added Workflow_FrameSource_ExternalImageStream sample, using video as a custom camera, not for headsets
- ✨ Added Combination_BasedOn_MotionTracking sample for learning feature usage and switching when motion tracking is available, as well as AR Foundation switching
- ✨ Added Combination_BasedOn_AppleVisionPro sample to demonstrate feature usage and switching on Apple Visio Pro
- ✨ Added Combination_BasedOn_Xreal sample to demonstrate feature usage and switching on XREAL devices
- ✨ Added multiple Mega sample, included in previous 4.7.x updates
- ✨ Added camera size switching and torch mode features in Workflow_FrameSource_CameraDevice
- 🔥 Removed the standalone AR Foundation sample, whose functionality is already included in other sample
- 🔥 Removed FrameRecording sample, whose functionality is already included in other sample
- 🔥 Removed MotionTracking_Fusion sample, whose functionality is already included in Combination_BasedOn_MotionTracking
- 🔥 Removed SurfaceTracking_ImageTarget sample. This feature combination can still be implemented easily
- 🔥 Removed Camera_CustomCamera sample. It can still be implemented manually if needed
- 🔥 Removed old glasses sample such as ActionOne and BT350
- ✨ Simplified eif recording and playback usage
- ✨ All sample now include an eif recording button, and recorded eif files can be used in the editor
- ✨ Rewrote launcher and added sample descriptions
- 🐛 Fixed the issue where sample scenes loaded through launcher were too dark
EasyAR and third-party AR feature integration:
- ⬆️ Updated EasyAR Sense to the official 4.7.0 release
- ⬆️ Updated EasyAR AR Engine Interop
- ⬆️ Updated ARCore SDK to 1.46.0
- 🔧 Disabled AR Engine on some phones where AR Engine cannot run reasonably
- 🐛 Fixed ARCore failure caused by ClassLoader behavior changes on Unity 6