Platforms Supported Thus Far
- Oculus (Released June 11th 2019)
- Windows MR VR (Released June 19th 2019)
- Windows MR AR (Released July 2nd 2019)
- Magic Leap (Released July 16th 2019)
- Google VR (Released July 26th 2019)
- PSVR (Released August 6th 2019: You can find it via the Unity forum on Sony’s Developer site.)
What’s New
The Unity XR team has been working hard to improve our multi-platform offering, which includes a new plugin architecture. As a result, this changes how settings are stored for AR/VR build targets, and how the SDKs for each supported platform are loaded.
The core part of our new plugin architecture is formed by subsystems. These subsystems implement groups of related functionality (e.g., camera, depth, display, input, etc.) and expose them as low-level managed C# APIs to developers, resulting in the following:
- More stable, multi-platform APIs
- Faster updates via the Unity Package Manager (e.g., the “Oculus XR Plugin” package is able to be updated outside of major Unity editor release cycles)
- Simpler multi-platform development
AR Foundation, the recommended approach for building AR applications on handheld devices, was also built upon this new architecture. We will be adding support for other devices that support AR features in the future.
Starting with Unity 2019.2, there will be new preview packages for our supported AR/VR platforms that use the new plugin architecture, with the goal of being production-ready by Unity 2019.3. We plan to deprecate the integrated AR/VR packages in Unity 2019.3.
Developing for AR/VR Platforms on Unity 2019.2
Using The New Plugin Architecture
The new plugin architecture has changed how Unity loads and manages SDKs of your target platforms. To use the new packages, do the following:
-
These package are preview packages, so you will need to enable the ability to see preview packages first. In the package manager menu, there is an “Advanced” drop-down by the search bar. Open it, and you will see “Show Preview Packages”. This should make the XR Management package appear. If you still don’t see it, you may need to switch to “All Packages”, in the drop-down below the Packages tab.
-
Download the XR Management package from Package Manager
-
Download the Loader for each SDK/platform you want to build for (e.g., the Oculus Loader)
-
Select the target SDK/platform from Available
Instead of going to Player Settings as a first step, the settings for XR and SDKs will now appear under Project Settings. The XR Management package will now serve as the main entry point for loading the right package for each target SDK/platform and managing respective settings. XR Management is also needed to make the XR Settings show up in Project Settings. Once downloaded, the XR Management package will take you to Project Settings, where loading and management of supported XR platforms takes place (see screenshot below).
Download the loader.
Install the downloaded loader.
The Tracked Pose Driver is now recommended for camera tracking:
- Add a Tracked Pose Driver component to the main camera game object in your project.
- Set the Tracked Pose Driver to use the “Center Eye” as the pose source, and untick the “Use Relative Transform” option.
Using Integrated Platforms
We want to note that the integrated XR platforms are still available in Package Manager. These packages will remain as is, but we encourage you to download the XR Management package and try the new XR plugins. You may not be able to use Legacy VR if you have XR Plugins installed, as some plugins may disable Legacy VR to prevent users from using two at the same time.
Roadmap
Over the next few weeks, we plan to release more implementations for Unity’s other supported XR platforms under the plugin architecture as preview packages. These include the Windows MR, Magic Leap, Google Daydream, and Google Cardboard XR Plugins. During this time, we’ll be looking for early testers and feedback to get these packages in production-ready state.
We plan to have XR plugins for most of our supported XR platforms in production-ready state by the release of Unity 2019.3 later this year (Windows MR and Magic Leap XR Plugins will likely remain in preview).
Let Us Know What You Think
The main goal of this preview release is to gather feedback on how the new plugin architecture is working for you so we can fine-tune the subsystems and workflows to fit your needs. Please provide input via this quick survey or ask questions in this forum.
Developer Notes:
D3D11 for Desktop, and OpenGLES3.0 for mobile are currently the only supported graphics APIs for the Oculus XR Plugin preview. Please note: the default graphics API for new mobile projects is Vulkan (which will be supported in the near future), so be sure to revert to GLES3.0 before deploying to your device.