XR is an umbrella term that includes the following types of applications:
Unity works closely with strategic partners to make sure that creators have all the support they need when developing content for Unity’s supported platforms. This involves deep platform integration, Unity engine improvements, and XR tech stack optimizations for each platform.
As of 2019.3, Unity officially supports these platforms for XR:
Unity does not support XR on WebGLA JavaScript API that renders 2D and 3D graphics in a web browser. The Unity WebGL build option allows Unity to publish content as JavaScript programs which use HTML5 technologies and the WebGL rendering API to run Unity content in a web browser. More info
See in Glossary.
Note: Valve and Google have used Unity’s XR SDK to develop their own plug-insA set of code created outside of Unity that creates functionality in Unity. There are two kinds of plug-ins you can use in Unity: Managed plug-ins (managed .NET assemblies created with tools like Visual Studio) and Native plug-ins (platform-specific native code libraries). More info
See in Glossary for OpenVR and Cardboard, respectively. These plug-ins are compatible with Unity 2019.3 and later. For more information, see the Getting started with VR development page.
Unity has developed a new plug-in framework called XR SDK that enables XR providers to integrate with the Unity engine and make full use of its features. This plug-in based approach improves Unity’s ability to make quick bug fixes, distribute SDK updates from platform partners, and to support new XR devices and runtimes without having to modify the core engine. To learn more about:
In 2019.3, Unity transitioned to a new plug-in framework to support XR platform integrations. As a result, built-in XR platform integrations have been marked as deprecated. These integrations are still available for use in 2019.3 and will remain functional in 2019.4. Unity will not be developing any new features for these integrations, but will continue to offer essential bug fixes.
The built-in integrations and their corresponding documentation are listed below:
Note: (1) The Vuforia Engine built-in packageBuilt-in packages allow users to toggle Unity features on or off through the Package Manager. Enabling or disabling a package reduces the run-time build size. For example, most projects don’t use the legacy Particle System. By removing the abstracted package of this feature, the related code and resources are not part of the final built product. Typically, these packages contain only the package manifest and are bundled with Unity (rather than available on the package registry).
See in Glossary (Vuforia Engine AR) will no longer be natively distributed and directly supported by Unity as of 2019.3. You will continue to be able to download new versions of Vuforia Engine for Unity via the Vuforia Developer Portal.
The AR overview page details how to get started with creating an ARAugmented Reality (AR) uses computer graphics or video composited on top of a live video feed to augment the view and create interaction with real and virtual objects.
See in Glossary application, lists the packages you need to download, and offers related links to additional documentation. Unity recommends downloading the AR Foundation and XR Management packages to create your application for Unity’s supported handheld and wearable AR devices.
The VR overview page details how to get started creating a VR application, lists the packages you need to download, and offers related links to additional documentation. To start, Unity recommends downloading the XR Management and XR Interaction Toolkit (Preview) packages to create your application for Unity’s supported VR devices.
Most of Unity’s XR functionality is available in packagesPackages are collections of assets to be shared and re-used in Unity. The Unity Package Manager (UPM) can display, add, and remove packages from your project. These packages are native to the Unity Package Manager and provide a fundamental method of delivering Unity functionality. However, the Unity Package Manager can also display Asset packages that you downloaded from the Asset Store. More info
See in Glossary, which you install through the Package Manager (from Unity’s main menu, go to Window > Package Manager). The Package Manager window displays detailed information about each package.
Note: To view preview packagesA preview package is in development and not yet ready for production. A package in preview might be at any stage of development, from the initial stages to near completion.
See in Glossary, click the Advanced drop-down menu in the Package Manager window, and select Show Preview Packages.
For a comprehensive list of packages to download, refer to the AR overview and VR overview pages.
Thie AR Foundation Samples GitHub repository contains examples of how to use Unity’s AR Foundation APIs.