Unity SDK 2.3.1
Published 2024.9.27
I agree to the XREAL APIs Terms of Service
I will disclose how NRSDK collects and processes data in my application and make it easily accessible to users. We recommend to add the following text on your app : This application runs on NRSDK, which is provided by XREAL Technology Ltd. and governed by the XREAL Privacy Policy.
Download
NRSDK for Unity 2.3.1
Release Note
Warning:
- SDK 2.3.1 is currently only compatible with the Beam Pro and My Glasses 1.4.0. For developers using Android phones, please wait for the Nebula 3.8.1 release in late September.
Improvements:
- Enhanced flexibility when creating anchors. Deprecated Get/SetEstimateRange methods in spatial anchors, removing the need to specify viewing angles and ranges. The demo has been updated accordingly.
- Adjusted the logo’s position on Beam Pro screen to avoid being blocked by the camera.
Known Issues:
- XREAL Light is not compatible with Samsung S23 and Beam Pro.
- URP is not compatible with multithreaded rendering.
NRSDK for Unity 2.3.0
Release Note
Compatibility Notice:
- SDK 2.3.0 is currently only compatible with the Beam Pro and the latest version of My Glasses, which was released alongside SDK 2.3.0. For developers using Android phones, please wait for the Nebula 3.9.0 release in late September.
What's New:
- License Support
- Enterprise partners can now apply for access to the Enterprise SDK, which includes APIs for gray camera data, IMU data, and other glasses control functionalities. If your company is interested in business collaboration, please contact us through the official website to request access.
- RGBCamera API
- Added Projection and UnProjection interfaces.
- NRMetrics
- Introduced the enableTearCollecting option (note: time-consuming operation), which allows the collection of tear data and outputs results in the Metrics log.
- Debounce Mode for Controller Tracker
- Added a new anti-shake mode for mobile ray tracking. The debounceMode option has been added to ControllerTracker, with the default set to false.
Improvements:
- Hand Tracking
- Enhanced joints stability and reduced latency.
- Improved pinch gesture recognition accuracy and stability.
- Better performance in low-light and complex background environments.
Bug Fixes:
- Fixed an issue where videos were not recorded after tapping "Record" and trying to view them in the album.
- Fixed an issue where hand tracking could be activated unintentionally when switching DoF modes.
- Fixed flickering issues in Unity’s controller interface when using the URP plugin.
- Fixed an issue where controllers became unusable when resizing the Game window in Editor mode.
Known Issues:
- XREAL Light is not compatible with Samsung S23 and Beam Pro.
- URP is not compatible with multithreaded rendering.
NRSDK for Unity 2.2.1
Release Note
Improvements:
- Upgrade Android Gradle (3.4.3 -> 4.2.2). Note: Gradle version must be 6.7.1 or higher to avoid build errors. If you are using Unity 2022 or later, the included Gradle version is sufficient. For versions earlier than 2022, you will need to download the appropriate Gradle version.
Bug Fixes:
- Remove the android:process=":space" tag from the AndroidManifest.xml.
NRSDK for Unity 2.2.0
Release Note
What's New:
- Loader
- Added a new Loader mode in the SDK. In this mode, the SDK libraries are loaded from the server (Nebula), significantly reducing the APK size. Furthermore, if there are no updates in Unity, the app can leverage the latest Nebula version to access new AR features without needing to re-import the SDK for updates.
- Dual Screen Display
- Added dual-screen display mode. This mode allows for different displays on the main screen (phone) and the secondary screen (glasses). When the AR app is sent to the background, the glasses continue to display the AR application, while the phone screen can show any 2D app.
- Hand Tracking
- Added recognition of the thumbs-up gesture to Hand Tracking.
- No longer support 32 bit application from this version.
- The minimum API Level required for the application to run is now Android API Level 29.
- Mono mode is now obsolete.
- Support XREAL Air 2 Ultra
Improvements:
- 6 DoF Tracking
- Updated the SLAM algorithm, enhancing the stability of 6 DoF tracking.
- Hand Tracking
- The latency of hand tracking has been minimized, ushering in a heightened level of responsiveness and contributing to an overall smoother user experience.
- Marked advancements have been achieved in enhancing the stability of gesture tracking trajectories, effectively mitigating issues such as jitter and abrupt jumps.
- The precision of gesture tracking has been significantly elevated, allowing for the meticulous recognition and tracking of intricate hand movements.
- The algorithm governing gesture laser has undergone refinement, resulting in improved directionality and decreased latency. This modification ensures a more responsive and accurate representation of gesture lasers.
- Meshing
- The process of generating mesh has been optimized for greater speed and accuracy, enhancing the overall development experience.
- Introduced semantic labeling to our meshing feature, now capable of identifying and classifying mesh segments into 10 distinct categories: BACKGROUND, WALL, BUILDING, FLOOR, CEILING, HIGHWAY, SIDEWALK, GRASS, DOOR, and TABLE.
- Spatial Anchor
- The addition of the anchor creation workflow enhances the visual appeal and user-friendliness of the system. This improvement allows for instant visual feedback, making the process of constructing reliable anchors more efficient and effective.
- Boosted the success rate of anchor detection and re-localization for a more stable AR experience.
Bug Fixes:
- Stability Issue with Ray Position in Hand Tracking Demo. Resolved an issue where the ray would deviate during the grab gesture simulation, ensuring consistent positioning throughout.
Known Issues:
- In the grab gesture execution, the system may first incorrectly recognize a pinch before identifying it as a grab.
- Under certain angles, performing pinch and grab gestures may cause the hand model to disappear.
NRSDK for Unity 2.1.1
Release Note
Bug Fixes:
- Solved the problem of client crashing after running continuously for about 7 minutes.
NRSDK for Unity 2.1.0
Release Note
Important Notice:
- Starting with this version (2.1.0), NRSDK will no longer support the Dev Kit. We recommend using the latest hardware devices for optimal performance and experience. For users still utilizing the Dev Kit, we advise upgrading to supported hardware or continuing with an older version of the SDK. We appreciate your ongoing support for NRSDK and look forward to bringing more innovations and improvements in future releases.
What's New:
- Spatial Anchor: A new feature that provides world-locked frames of reference.
- Enables users to place, persist, and resume virtual content across sessions to the same real-world locations, enhancing the seamless AR experience.
- Introduces the ability to share anchors between users, allowing different users to interact with the same set of virtual objects anchored in the real world.
- Support for Single Pass Stereo Rendering, a rendering technique that significantly enhances performance:
- Reduces CPU usage, which is especially beneficial for applications that are CPU-bound or draw call bound.
- Leads to less battery usage and lower hardware temperature, providing a more comfortable user experience.
- Introduced MonoMode rendering for on-screen display: enables 2D (1920*1080) mirroring for left and right eyes
- Added metrics in the logs
- Supports URP (Universal Render Pipeline)
Improvements:
- Hand Tracking
- Significant improvement in the stability of gesture tracking trajectory, reducing jitter and jumping phenomena.
- Enhanced accuracy of gesture tracking, enabling more precise recognition and tracking of complex hand movements.
- Optimized runtime performance and resource usage of the gesture algorithm, resulting in smoother gesture tracking and lower device resource occupancy.
- Modify the algorithm of gesture ray to improve its directionality and reduce the latency of gesture ray.
- Meshing
- Improved mesh reconstruction for flat surfaces (including desks, floors, and walls), resulting in smoother and more complete meshes, less affected by weak textures.
- Resolved the issue of fragments in space.
- Extended the effective distance of the mesh from 4 meters to 5 meters.
Modifications:
- Enhanced NRTrackingModeChangedTip for smoother transitions between 3dof and 6dof modes.
- Raised the minimum Unity version supported by NRSDK to 2019.4.X.
- Adjusted ProjectTips: Now includes an Auto Graphic API check within ProjectSetting > GraphicAPI.
- Updated HomeMenu: Now defaults to Nebula after exiting the App.
- Refined GlassControl: Added NRDeviceSubsystem.BrightnessMax to dynamically read the maximum brightness for glasses.
Bug Fixes:
- Resolved the issue where a black screen appeared 0.5 seconds before recording began.
- Background MR applications will automatically close when the glasses are unplugged.
NRSDK for Unity 1.10.2
Release Note
What's New:
- Added Depth Mesh, enhanced contextual awareness
- This feature is fully tested on the following devices:
- OnePlus: 7T / 9
- SONY: Xperia 5iii
- OPPO: Find X2 / Find x3 Pro
- HUAWEI: P30 / Mate40Pro
- LG: VELVET / V50s / G900N / style
- SAMSUNG: Galaxy Note20Ultra / Galaxy Note20 / Galaxy S21 5G / Galaxy Z Fold3 5G / Galaxy S20 Ultra
- Save/load mesh: enabled saving mesh via MeshSave, loading mesh into the Editor via LoadObjMeshFile
- Added API NRDevice.Subsystem.SetBrightness to adjust the brightness of the glasses.
Improvements:
- HandTracking:
- Gesture output: Improved accuracy and stability, error detection rate decreased significantly
- HandTracking algorithm: Operation efficiency optimization, power consumption optimization
- Greatly improved followability of hand models (for phones that use Qualcomm chips (except 888 and gen1))
- Improved anti-shaking ability and prediction ability of 3 DOF mode.
- (NRSDK Experimental)MultiLayer is compatible with MultiThread Rendering
Fixed:
- Fixed Bluetooth permission crashes in Android 12
- Fixed other bugs, and improved stability
NRSDK for Unity 1.9.5
Release Note
What's New:
- Added support for saving photos to the local album when using PhotoCapture
- Added support for saving videos to the local album when using Record
- Added API NRHMDPoseTracker.ResetWorldMatrix to reset the camera;
resetPitch(Optional): whether the pitch Angle is reset - Added a demo ResetCamera to demonstrate how to use the API ResetWorldMatrix
- Added a configuration option ForceKillWhileGlassSwitchMode in SessionConfig to decide whether exit the process while switching between 2D and 3D mode, True by default
- Added a new style of the virtual controller
Fixed:
- Fixed the issue that recording video twice in a row, internal audio recording fails during the second recording
- Fixed raycast missing after the app enters the background
NRSDK for Unity 1.9.3
Release Note
What's New:
- Implemented new Hand Tracking underlying algorithms that greatly improved hand tracking performance
- Added support for 0Dof Stable Mode: NRHMDPoseTracker.ChangeTo0DofStable that enables display's tag-along behaviour depending on the current FOV
- Added support to record environment sound and in-app audio simultaneously. See AudioState ApplicationAndMicAudio in RGBCamera-Record scene for details
- Added brightness related native APIs in NRKernal.NRDeviceSubsystem
Improvements:
- Improved 3DoF controller tracking and 3DoF headtracking on XREAL Air
- Improved speed switching between different tracking mode
Bug fixed:
- Fixed occasional SDK launch failure
- Fixed audio/video out of sync problem of recording (the audio speed is accelerated)
- Fixed the issue that microphone's recording volume is too low
- Fixed RGB Camera's capturing/recording offset
- Fixed controller drift due to 0DoF/3DoF/6DoF tracking mode switch
NRSDK for Unity 1.8.0
Release Note
What's New:
- Adapt for XREAL Air
- Automatic mode switch between 3DoF/6DoF head tracking, image/plane tracking, video capture on XREAL Air & XREAL Light;
- APIs getting current device type (XREAL Air / XREAL light)
- Adapt for Android 12 (API level 31)
- (Experimental) Support overlay compositor layers allowing texture rendering with higher quality
- (Experimental) Support DRM(Digital rights management) protected content display
Improvements:
- Significantly improve stability of head and controller tracking
- Reduce time needed switching between 3DoF/6DoF
- Reduce time needed building blue tooth connection with Dev Kit controller
- Optimize Unity configuration check tool and tips
Bug fixed:
- Fixed erroneously displayed black area while using screen capture
- Other bug fixes
Unity SDK 1.7.0
Release Note
New Features:
- Handtracking 1.0:
- Added support for most Android devices including Snapdragon 888 / Exynos based models
- Overall tracking performance and stability improvements
Optimization:
- Largely improved 3DoF controller stability; mitigated controller drift
- Optimized 3DoF rotational head model
- Head pose performance&stability improvements
- Minor API changes
Bug fixed:
- Solved RGBCamera start/stop lag when power saving mode is enabled
- Solved the issue that NRSDK emulator doesn't reset properly when errors occur in Unity editor
- Fixed battery indicator accuracy on Dev Kit controller under a few circumstances
Unity SDK 1.6.0
Release Note
New Features:
- Added Hand Tracking (In Beta phase)
- MR Apps using the Hand Tracking feature in NRSDK 1.6.0 can only operate until 12/31/2022.
- This feature is under Beta phase, more devices/models will be supported in the next release of NRSDK.
- This feature is fully tested on the following devices:
- XREAL Dev-Kit
- XREAL Enterprise-Kit
- OnePlus:9R / 7T
- LG:V60 / V50S ThinQ 5G / V50 ThinQ 5G / G9(Velvet 5G) / Wing
- SONY:Xperia 5 II / Xperia 1
- SAMSUNG:Galaxy Note20 5G / Galaxy S10+ / Galaxy S20+ 5G / Galaxy Z Fold 2 5G /
- Galaxy Note20 Ultra / Galaxy Note10+ 5G / Galaxy A90 5G
- ZTE Axon 10 pro
- Black Shark 2 Pro
- Snapdragon 888 / Exynos based models cannot be operated, will be supported in the next version of NRSDK.
- The operation of other devices is currently unknown.
- Added Unity XR Plugin access
- Added a quick setup tool for the NRSDK environment
- Added ability to record audio while capturing first person video footage
- Added warning messages and events
- Added support for Android 11 (updating your NRSDK will ensure compatibility with a wider range of devices)
- Settings in Nebula will be synchronized to MR Apps (e.g., Left-Hand Mode, Power Saving Mode)
Optimization:
- Optimized the performance of spatial computing
- Optimized the rendering performance
- Optimized image tracking at rest
- Optimized the dynamic switch between 6DoF/3DoF/0DoF controller tracking modes
Bug fixed:
- Fixed possible crash encountered when recording your screen
- Fixed API crash when calling disabled RGBCamera
- Fixed possible memory leak
- Fixed window jitter, occurring in only a few instances
- Fixed crash encountered while using with an unstable phone connection
- Fixed existing issues
Unity SDK 1.5.7(Computing Unit Only, latest OS required)
Release Note
New Features:
- Added compatibility with Exynos chipset
- Updated reset controller and exit menu default buttons
- Added YUVCameraTexture
Optimization:
- Improved 3DoF performance
- Lowered overall SDK CPU usage by 40%
Bug fixed:
- Fixed 3DoF controller tracking lost when moving too quickly
- Fixed a bug where the SDK gets stuck or crashes on exit
Unity SDK 1.4.8(Computing Unit Only, latest OS required)
Release Note
New Features:
- Added running state tips (temperature, battery, lost tracking notifications)
- Added dynamic switch of 6DoF/3DoF/0DoF
- Supported XREAL Dimmer
- Added "IsTouching" API in NRInput
- Adapted to smartphone screen resolution change when NRSDK is running
- Adapted to Unity 2019.4 LTS
Optimization:
- Optimized hardware check tips for developers and users (Added the following error tips: cannot find rgbcamera device, cannot find DP device, display mode doesn't match)
- Improvements of the SDK performance (CPU Resource Lower 10%)
- Optimized NRDisplay startup procedure
- Optimized 3DoF Performance
Bug fixed:
- Fixed memory leak
- Fixed the jitter when RGB camera opens
- Fixed existing issues
Unity SDK 1.3.0(Computing Unit Only, latest OS required)
Release Note
New Features:
- Support for vertical plane detection.
- Support for gamma color space.
- Added glasses connection error tips.
- Added glasses status message.
- Added video recording support in 64 bit version.
Optimization:
- 6Dof head pose quality improvements
- 3Dof controller pose quality improvements
- Improvements of the SDK performance (CPU & Memory)
- Optimized the SDK startup time.
- Optimized the SDK mobile device adaptability.
- Optimized the rendering pipeline.
- Optimized the controller connectivity.
Bug fixed:
- Fixed releasing phone controller resource issue.
- Fixed exiting app issue.
Unity SDK 1.2.1(Computing Unit Only, latest OS required)
Release Note
Bug Fixed:
- Fixed the problem of simulator and imagetracking training tool on Mac
Optimization:
- Improved the quality of video record
- Improved memory usage
- Improved the performance of customized phone controller
Unity SDK 1.2.0(Computing Unit Only, latest OS required)
Release Note
New Features:
- Custom Phone Controller supported
- Automated deployment settings
Optimization:
- Improved image tracking database training tool
Unity SDK 1.1.3 Beta
Release Note
New Features:
- Compatible with old version controller
Unity SDK 1.1.2 Beta
Release Note
Optimization:
- Improve SLAM stability
New Features:
- Add the glasses putting on and taking off event
- Support capturing video under OpenXR standard
Unity SDK 1.1.1 Beta
Release Note
New Features:
- Image Tracking training tool could change the size dynamically
Bug Fixed:
- Fixed running issue on Mac Platform
- Fixed controllers issue on the phone platform
Unity SDK 1.1 Beta
Release Note
Optimization:
- RGB camera data acquisition performance
- Optimized the overall size of the SDK assets
New Features:
- Unity Editor Emulator
- Multithread rendering support
- Add version management function for image recognition training tool. When the tool is upgraded, the image database asset is automatically updated
Bug Fixed:
- Fixed crash problem caused by memory leak for polygon plane recognition in HelloMR demo