Install PolySpatial and visionOS support
You can choose three different modes for an app you develop for the visionOS platform. Each mode has different requirements for the modules and packages you must install in your project:
Windowed apps
You can develop Windowed apps for visionOS by installing the visionOS Platform module in the Unity Hub. All Unity developers can create windowed apps using the visionOS module. No additional packages or specific Unity subscription type is required.
Refer to Windowed Apps in visionOS for more information about developing windowed apps.
VR apps
To develop VR apps for visionOS, you must:
You must also set the visionOS App Mode to Virtual Reality - Fully Immersive Space. You can access this setting in the Apple visionOS section under XR Plug-in Management in your Project Settings.
Refer to Fully Immersive VR on visionOS for more information about developing VR apps.
Mixed reality apps
To develop MR apps for visionOS, you must install the PolySpatial packages in addition to the visionOS platform module and the XR packages:
You must also set the visionOS App Mode to Mixed Reality - Volume or Immersive Space. You can access this setting in the Apple visionOS section under XR Plug-in Management in your Project Settings.
Refer to PolySpatial Mixed Reality apps on visionOS for more information about developing MR apps.
Important
Developing VR or MR apps for the visionOS platform requires a Unity Pro, Enterprise, or Industrial subscription.
Prerequisites
Refer to Requirements for information about the hardware and software required to develop apps for visionOS using Unity.
Install the visionOS platform module
Refer to Add modules in the Unity Hub documentation for instructions on adding modules to your Editor install.
If you only install the visionOS platform module, all apps that you develop for visionOS automatically launch in windowed mode.
Install the XR packages
Before you install the XR packages, you must Install the visionOS platform module.
To install the visionOS XR packages:
- Open your project in the Unity Editor.
- Open the Project Settings window (menu: Edit > Project Settings).
- Select the XR Plug-in Management section.
- If you see a notice about installing the XR Plug-in Management package, click the button to install it.
- Select the visionOS tab.
- Under Plug-in Providers, enable Apple visionOS.
Important
To see the Apple visionOS provider, you must have version 4.4.1 (or later) of the XR Plug-in Management package installed. Use the Package Manager window (menu: Window > Package Manager) to update the package, if necessary.
When you enable the Apple visionOS provider, the Unity Package Manager installs the following packages:
- Apple visionOS XR Plugin (
com.unity.xr.visionos
) - AR Foundation (
com.unity.xr.arfoundation
) - XR Core Utilities (
com.unity.xr.core-utils
)
Additional packages in the project might be updated during the install process if required to satisfy version dependencies.
After you install the Apple visionOS XR Plugin, you can choose whether your app launches in VR or windowed mode with the App Mode setting. You can access this setting in Apple visionOS section under XR Plug-in Management in your Project Settings. If you choose the remaining option, Mixed Reality - Volume or Immersive Space, Unity offers to install the PolySpatial packages for you.
Note
You cannot change App Mode at runtime. For example, you cannot launch an app in Windowed mode and then change to VR or MR mode.
Install the PolySpatial packages
Before you install the PolySpatial packages, you must Install the visionOS platform module and Install the XR packages.
To install the PolySpatial packages:
Open the Project Settings window (menu: Edit > Project Settings).
Select the Apple visionOS settings under XR Plug-in Management.
Change the App Mode setting to Mixed Reality - Volume or Immersive Space.
Unity offers to install the PolySpatial packages, which are required to support the mixed reality app mode.
Choose Yes.
Unity installs the following packages:
- PolySpatial (com.unity.polyspatial)
- PolySpatial XR (com.unity.polyspatial.xr)
- PolySpatial visionOS (com.unity.polyspatial.visionos)