Version: 2022.1
Set up an XR scene
XR input options

XR Origin

The XR Origin serves as the center of tracking space in an XR sceneA Scene contains the environments and menus of your game. Think of each unique Scene file as a unique level. In each Scene, you place your environments, obstacles, and decorations, essentially designing and building your game in pieces. More info
See in Glossary
.

An XR Origin configuration is a set of GameObjectsThe fundamental object in Unity scenes, which can represent characters, props, scenery, cameras, waypoints, and more. A GameObject’s functionality is defined by the Components attached to it. More info
See in Glossary
and components that work together to transform data from the XR tracking subsystems into world space. For example, the TrackedPoseDriver component on the Main CameraA component which creates an image of a particular viewpoint in your scene. The output is either drawn to the screen or captured as a texture. More info
See in Glossary
GameObject moves the Camera relative to the XR Origin using the tracking data for the user’s headset or handheld device. See XR Origin for more information about the XR Origin.

XR devices provide tracking data in real-world units relative to a point chosen by the XR system at initialization. Unity aligns the XR Origin GameObject in a scene with this initial point. The starting position of the XR Origin in the scene also determines the default starting position of the Camera.

GameObjects representing tracked entities, such as the user’s headset or hand-held device, are children of the XR Origin GameObject in the scene hierarchy. This means that changes in position and rotation based on tracking updates are relative to the XR Origin. As the user moves in the real world, these child GameObjects move relative to the XR Origin in the scene. The XR Origin doesn’t move on its own. However, you can move the XR Origin with a script to allow the user to teleport or move via controller input.

XR Origin configurations

The Unity XR packages provide a number of XR Origin configurations tailored for different types of XR applications. The available options depend on which packages you have added to your project.

XR type Rig Menu Package Notes
VR, MR XR Rig GameObject > XR > Convert Main Camera To XR Rig XR Legacy Input Helpers (installed with the XR Plug-in Management package) Replaces the standard Camera in a basic Unity Scene. The logic used to replace the main camera can fail in complex scenes.
VR, MR XR Origin GameObject > XR > XR Origin XR Core Utils (installed with the XR Interaction Toolkit package) Does not include GameObjects for controllers.
VR, MR XR Origin (VR) GameObject > XR > XR Origin (VR) XR Interaction Toolkit Includes controller GameObjects set up for action-based input.
VR, MR XR Origin (VR) GameObject > XR > Device-based > XR Origin (VR) XR Interaction Toolkit Includes controller GameObjects set up for device-based input.
AR XR Origin (AR) GameObject > XR > XR Origin (AR) XR Interaction Toolkit Includes controller GameObjects.
AR AR Session Origin GameObject > XR > AR Session Origin AR Foundation Deprecated in favor of XR Origin (AR).

Note: In the latest versions of the Unity XR packages, the XR Rig have been renamed to XR Origin. The XROrigin component also replaces the CameraOffset component, providing a few additional settings. See XR Origin component for more information. In addition, the AR Session Origin has been renamed to XR Origin (AR).

Set up an XR scene
XR input options