XR Motions Rig

XR Motions Rig is a Unity prefab that contains all available features from the XR Motions package, and you can drag and drop it into the scene hierarchy for a quick XR navigation setup.

XR Motion Rig is a prefab variant built on top of XR Rig, which comes from the XR Core package. If you have purchased Telerik XR Complete, then you may also take a look at the XR Rig Complete from the XR Integration package as this prefab variant includes the full set of features from all Telerik packages combined.

Rig Concept

The Rig prefab represents the XR player who will be navigating in the scene. The rig has a specific children hierarchy allowing cross-platform handling of different XR features—head, hands, and fingers presence, controller button states, camera effects, etc. Many of the Rig children implement the IXRRigNode interface allowing them to receive updates in the desired order.

Rig Child Hierarchy

The following children and behaviors are part of the Rig hierarchy:

  • Tracking space—used for managing the position and state of head, hands, fingers, and controllers. The tracking space idea is to represent a platform-independent character hierarchy which is not updated automatically but instead is managed by several platform-specific input handlers. You may find more info about this concept in XR Core package documentation.
  • XR Camera—the camera that tracks the player head and is used for rendering the XR scene. You may find more info in the Camera Effects article.
  • Input—a set of platform-specific input handlers that are used to populate the tracking space children hierarchy. You may find more info about this concept in XR Core package documentation.
  • Gestures—a set of handlers that control when a specific hand gesture or controller button is pressed so that a locomotion action is executed.
  • Pointers—this is a PointersController script that controls when the teleportation pointer curve should be visible. For this purpose, it uses the TeleportationPointerSource class inheritors such as the HandLTeleportationGesture and JoystickTeleportationGesture and activates a CurvedTeleportationPointer when some of the sources are active. For more information, see the Teleportation Curve article.
  • NavMeshAgent—an instance of Unity Nav Mesh Agent that is used for easier setup of the allowed navigation areas in your scene. For more information, see the Nav Mesh Setup article.
  • Locomotion script—this script is responsible for respecting the current Locomotion settings and handling the execution of smooth locomotion, teleportation motion, or turn around motion.
In this article
Not finding the help you need?