Releases: android/android-xr-unity-package
Releases · android/android-xr-unity-package
Android XR Extensions for Unity v1.3.1
Editor version and package compatibility
- Package dependencies updated in this version:
- OpenXR Plugin (
com.unity.xr.openxr) 1.17.0-pre.2 - AR Foundation (
com.unity.xr.arfoundation) 6.4.0
- OpenXR Plugin (
- Verified compatible packages:
- Unity OpenXR Android XR (
com.unity.xr.androidxr-openxr) 1.3.0-pre.1 - AR Foundation (
com.unity.xr.arfoundation) 6.4.0
- Unity OpenXR Android XR (
Known issues
- None.
Added
- Image Tracking:
- New OpenXR Feature Android XR (Extensions): Image Tracking, which provides marker tracking via
ARTrackedImageManager. Including APIs:AndroidXRImageTrackingSubsystem.OnImageTrackingConfigured: the event indicating when asynchronous image tracking configuration completes.AndroidXRImageTrackingSubsystem.OnImageTrackingLost: the event raised if image tracking encounters an internal failure.
- Added image reference in ImageTracking sample.
- New OpenXR Feature Android XR (Extensions): Image Tracking, which provides marker tracking via
- Added
XRUnboundedRefSpaceFeature.IsExtensionEnabledto indicate if the required extension is available at runtime. - Expanded Android XR Streaming support with DirectX graphics APIs. You can now select Vulkan, Direct3D12, and / or Direct3D11 for Play Mode.
- Trackpad Gestures:
- New additive OpenXR Interaction Android XR Trackpad Gestures Interaction, which provides ability to listen for trackpad gesture inputs.
Changed
- Promoted
XRSystemStateFeaturefrom experimental to public asXRRecommendedSettings. - Changed
XrInputModalityto be flags, allowing multiple modalities to be combined.
Deprecated
- None.
Removed
- Removed feature Android XR Mouse Interaction Profile. Please use Android Mouse Interaction Profile from OpenXR Plugin 1.17.0-pre.2 instead.
Fixed
- Fixed typo around
IsExtensionEnabledinXRPassthroughFeature,XRFineEyeFeature, andXRUnboundedRefSpaceFeature. - Fixed various other typos in comments and code.
Android XR Extensions for Unity v1.3.0
Editor version and package compatibility
- This version of the package requires minimal Unity Editor version
6000.3.6f1. You can install the official Unity 6.3 (e.g.6000.3.5f2or newer) from the Unity Hub. - Package dependencies updated in this version:
- OpenXR Plugin (
com.unity.xr.openxr) 1.17.0-pre.1 - AR Foundation (
com.unity.xr.arfoundation) 6.3.3 - XR Plugin Management (
com.unity.xr.management): 4.5.4
- OpenXR Plugin (
- Verified compatible packages:
- Unity OpenXR Android XR (
com.unity.xr.androidxr-openxr) 1.2.0 - AR Foundation (
com.unity.xr.arfoundation) 6.4.0 - Composition Layer (
com.unity.xr.compositionlayers) 2.3.0 - XR Hands (
com.unity.xr.hands) 1.7.3 - Universal Render Pipeline (
com.unity.render-pipelines.universal) 17.3.0
- Unity OpenXR Android XR (
Known issues
- Regression issue found in OpenXR Plugin 1.16.1 where projects hit validation issues with a error icon on the OpenXR Feature but no message showing under XR Plug-in Management > Project Validation panel.
- Workaround: check individual samples'
README.mdon how to set up the sample or Android XR devsite for more instructions. - To include a formal fix, please upgrade to OpenXR Plugin 1.17.0-pre.1 or newer versions.
- Workaround: check individual samples'
- Regression issue found in Unity Editors where Package Manager shows invalid signature errors under public packages.
- Workaround: In case it blocks package importing, navigate to the problemaitc package, click Manage dropdown and select customize to include a customized copy of the package source into your project. You can then dismiss the Editor error and use it as before.
- To include a formal fix, please upgrade Editor to
6000.3.5f2or newer. See more details in Community Discussions. - Also check out Export and sign your UPM package about the package signature.
Added
- XR Spatial API support:
- Provide public API under
XRSessionFeatureto configureuses-featureelement forandroid.software.xr.api.SPATIALon the application's manifest file. - Implement
IXRSpatialSdkinterface for OpenXR features with XR Spatial API requirements. - For more details, check examples from PackageManager features for XR apps.
- Provide public API under
- Fine Eye:
- New OpenXR Feature Android XR (Extensions): Fine Eye which is a supplement to Unity OpenXR Android XR's Android XR: AR Face feature and provides access to fine eye poses.
- Provide extension method
TryGetFineEyePoses(this ARFace, out AndroidOpenXREyeTrackingStates,out Pose, out Pose). - See more details in Unity OpenXR Android XR | Face Tracking
- Android XR Streaming:
- New OpenXR Feature Android XR Streaming which provides instructions on how to prepare projects ready for Android XR Direct Preview.
- Added a Dynamic-link library (DLL) build of the native plugin to support PlayMode on Windows Editor.
- For more information about Android XR Direct Preview, refer to Android XR devsite updates.
- Light Estimation Cubemap:
- New OpenXR Feature
XRCubemapLightEstimationwhich provides lighting environment probes viaAREnvironmentProbeManager.
- New OpenXR Feature
Changed
IsExtensionEnabledin each OpenXR Feature now reflects both extension availability and system supportness to better report runtime capabilities. Applications should checkIsExtensionEnabled.HasValueandIsExtensionEnabled.Valuebefore accessing other feature APIs, and handle unsupported features accordingly.- Updated samples ObjectTracking, ImageTracking, XRControllerSample, SceneMeshing with AR Camera Mananger which prepare for passthrough usage from AR Camera.
- Added new settings Joint Set under
XRBodyTrackingFeature. It defaults toXRBodyJointSet.UpperBodyto match previous behavior.- Introduces two
XRBodyJointSettypes.XRAvatarSkeletonJointIDis replaced by corresponding enum typesXRUpperBodyJointIDandXRFullBodyJointID. XRAvatarSkeletonJointIDUtilityis replaced byXRBodyJointSetUtilityto support multiple joint sets.
- Introduces two
Deprecated
- Deprecated Subsampling (Vulkan) option in Android XR (Extensions): Session Management feature. Please use
FoveatedRenderingFeature.TrySetSubsampledLayoutEnabled(bool)from OpenXR Plugin package instead. See details in Subsampled layout.
Removed
- Removed feature Android XR (Extensions): Hand Mesh. Please use Hand Mesh Data from Unity OpenXR Android XR instead.
- Removed feature Environment Blend Mode and
TransparentBackgroundRendererFeature. Please use AR Camera from Unity OpenXR Android XR to enable passthrough background. - Remove feature Android XR: Face Tracking. Please use AR Face from Unity OpenXR Android XR instead.
Fixed
- Fixed a typo in public API
TryGetMarkerDatawithinAndroidXRImageTrackingSubsystem.
Android XR Extensions for Unity v1.2.0
Editor version and package compatibility
- This version of the package requires minimal Unity Editor version
6000.1.17f1. You can install the official Unity 6.1 (e.g.6000.1.17f1or newer) from the Unity Hub. - Package dependencies updated in this version:
- OpenXR Plugin (
com.unity.xr.openxr) 1.15.1 - AR Foundation (
com.unity.xr.arfoundation) 6.2.0 - XR Plugin Management (
com.unity.xr.management): 4.5.1
- OpenXR Plugin (
- Verified compatible packages:
- Unity OpenXR Android XR (
com.unity.xr.androidxr-openxr) 1.1.0-pre.1 - OpenXR Plugin (
com.unity.xr.openxr) 1.15.1 - AR Foundation (
com.unity.xr.arfoundation) 6.3.0-pre.1 - Composition Layer (
com.unity.xr.compositionlayers) 2.1.0 - XR Hands (
com.unity.xr.hands) 1.6.1 - Universal Render Pipeline (
com.unity.render-pipelines.universal) 17.1.0
- Unity OpenXR Android XR (
Known issues
SpaceWarpFeaturegenerates motion vectors in the wrong NDC space.- Unity has released the fix in 6000.1.13f1 and OpenXR Plugin 1.15.1. Please upgrade Unity Editor and OpenXR packages to include the change.
- Under Application SpaceWarp setting menu, check Use Right Handed NDC to apply the correct space on Android XR.
- Also noted, on Android XR headsets, SpaceWarp does not need to be updated with the main camera's current position or rotation.
- See more details in Application SpaceWarp in OpenXR.
Added
- Added extension function
XRMeshSubsystem.IsSceneMeshId(TrackableId).
Changed
- None.
Deprecated
- None.
Removed
- Removed editor settings
SpaceWarpfromXRSessionFeature. Please useSpaceWarpFeaturefrom OpenXR Plugins instead.
Fixed
- Fixed
ARMeshManagercompatibility issue withXRSceneMeshingFeature. - Fixed alpha environment blend mode compatibility issue with URP.
Android XR Extensions for Unity v1.1.0
[1.1.0] - 2025-06-27
Editor version and package compatibility
- This version of the package requires minimal Unity Editor version
6000.1.0b12. You can install the official Unity 6.1 (e.g.6000.1.0f1or newer) from the Unity Hub. - Verified compatible packages:
- Unity OpenXR Android XR (
com.unity.xr.androidxr-openxr) 1.0.0-pre.3
- Unity OpenXR Android XR (
Known issues
- None
Added
- None
Changed
- Subsampling (Vulkan) is now enabled by default in Android XR (Extensions): Session Management. To use it at runtime:
- Foveation feature is required for Subsampling (Vulkan). Otherwise, the application may result in rendering faulty.
- For projects with Universal Render Pipeline (URP), select Foveated Rendering feature. Check Foveated rendering in OpenXR for more details.
- For projects with Built-in Render Pipeline (BiRP), select Foveation (Legacy) feature for legacy support.
- Scene Meshing is promoted from experimental feature to release feature.
Deprecated
- None
Removed
- None
Fixed
- Fixed issue#7: Compile Errors with Google.XR.Extensions on Non-Android Platforms.
- Fixed enum value and comments in
XRFaceParameterIndices.
Android XR Extensions for Unity v1.0.0
Android XR Extensions for Unity v1.0.0 Release
- This version of the package requires minimal Unity Editor version
6000.1.0b12. You can install the official Unity 6.1 (e.g.6000.1.0f1or newer) from the Unity Hub. - Package dependencies updated in this version:
- OpenXR Plugin (
com.unity.xr.openxr) 1.14.2 - AR Foundation (
com.unity.xr.arfoundation) 6.1.0
- OpenXR Plugin (
- Verified compatible packages:
- Unity OpenXR Android XR (
com.unity.xr.androidxr-openxr) 1.0.0-pre.2 - Composition Layer (
com.unity.xr.compositionlayers) 2.0.0
- Unity OpenXR Android XR (
Known issues
- Vulkan Subsampling now causes rendering issues in multiple samples, including ImageTracking, HandMesh, SceneMeshing, and XRController.
- It's confirmed as a regression issue from OpenXR Plugin package, expect to be fixed by future releases.
- Workaround: To disable it, under the setting menu of Android XR (Extensions) Session Management, unselect Subsampling (Vulkan).
Added
- Marker Tracking and QR Code Tracking:
- New OpenXR Feature
XRMarkerTrackingFeaturewhich provides marker tracking viaARTrackedImageManager. Including APIs:- Extension method
ARTrackedImage.IsMarker()to check if the image instance is a marker. - Extension method
ARTrackedImage.TryGetMarkerData(out XRMarkerDictionary, out int)to get marker data from a marker instance. - New ScriptableObject
XRMarkerDatabase, a container ofXRMarkerDatabaseEntry, used to manage marker references in anXRReferenceImageLibrary.
- Extension method
- New OpenXR Feature
XRQrCodeTrackingFeaturewhich provides QR Code tracking viaARTrackedImageManager. Including APIs:- Extension method
ARTrackedImage.IsQrCode()to check if the image instance is a QR Code. - Extension method
ARTrackedImage.TryGetQrCodeData(out string)to get the QR code data from a QR Code instance.
- Extension method
- New implementation of
XRImageTrackingSubsystem. To use it with AR Foundation'sARTrackedImageManager, create anXRReferenceImageLibrarywith a QR Code reference named QrCode and/or updates marker references fromXRMarkerDatabase. - New sample ImageTracking which demonstrates the usage of QR Code tracking and marker tracking.
- New OpenXR Feature
- Added experimental features support which use OpenXR extensions
XR_ANDROIDX_*. Noted:- Applications can then access
ANDROIDXextensions at runtime but cannot be published in Google Play Store. - Experimental features can take several iterations towards formal releases which may include breaking changes, deprecation, and removal.
- Applications can then access
- Body Tracking (Experimental):
- New Experimental OpenXR Feature
XRBodyTrackingFeaturewhich provides body tracking viaARHumanBodyManager. - New sample BodyTracking which demonstrates the usage of body tracking.
- New Experimental OpenXR Feature
- System State (Experimental):
- New Experimental OpenXR Feature
XRSystemStateFeaturewhich provides system state viaTryGetSystemState(out systemState). - Added system state API usage to BlendMode sample.
- New Experimental OpenXR Feature
- Scene Meshing (Experimental):
- New Experimental OpenXR Feature
XRSceneMeshingFeaturewhich provides scene mesh data viaXRMeshSubsystem. - Added new sample SceneMeshing which demonstrates the usage of scene meshing API.
- New Experimental OpenXR Feature
Changed
- Subsampling (Vulkan) is now disabled by default in Android XR (Extensions) Session Management.
- Face Tracking:
- Updated
XRFaceParameterIndiceswith new enum values for tongue blendshapes. - Updated
XRFaceStatewith new propertyConfidenceRegions, indexed by new enumXRFaceConfidenceRegion.
- Updated
Deprecated
- N/A
Removed
- Removed
XRTrackableFeature,XRAnchorFeature, and Trackables sample. Please useARPlaneFeatureandARAnchorFeaturefrom Unity OpenXR Android XR instead. - Removed
XRDisplayRefreshRateFeatureand DisplayRefreshRate sample. Please useDisplayUtilitiesFeaturefrom Unity OpenXR Android XR instead.
Fixed
- Fixed typo in
XRHandMeshFeaturewhich referred to depth texture permission rather than hand tracking permission. - Fixed bug in
XRHandMeshFeaturewhich started a subsystem in theOnSubsystemStop()callback.
Android XR Extensions for Unity v0.9.1
Android XR Extensions for Unity v0.9.1 Release
Added
- New Sample XRController which syncs and displays Samsung Controller
Changed
- N/A
Deprecated
- N/A
Removed
- N/A
Fixed
- Updated Android XR permissions.
Android XR Extensions for Unity v0.9.0
Initial Release
This is the first release of Android XR Extensions for Unity <com.google.xr.extensions> v0.9.0 developer preview package.
This version supports the following features:
- Device Tracking via OpenXR Plug-in Provider
- Session Management via Session Subsystem Provider
- Planes via Plane Subsystem Provider
- Anchors via Anchor Subsystem Provider
- Tracked Objects via Object Tracking Subsystem Provider
- Hand Meshes via Mesh Subsystem Provider.
- Passthrough Composition Layer via OpenXR Composition Layer Provider
- Face Tracking via MonoBehavior XRFaceTrackingManager
- Unbounded Reference Space
- Display Refresh Rate
- Environment Blend Mode
- Foveation (Legacy)
- Android XR Mouse Interaction Profile
See this guide to get started with developing with Unity for Android XR.
Reference documentation for this package can be found here.