Namespace UnityEngine.XR.Interaction.Toolkit
Classes
ActionBasedContinuousMoveProvider
Locomotion provider that allows the user to smoothly move their rig continuously over time using a specified input action.
ActionBasedContinuousTurnProvider
Locomotion provider that allows the user to smoothly rotate their rig continuously over time using a specified input action.
ActionBasedController
Interprets feature values on a tracked input controller device using actions from the Input System into XR Interaction states, such as Select. Additionally, it applies the current Pose value of a tracked device to the transform of the GameObject.
ActionBasedSnapTurnProvider
A locomotion provider that allows the user to rotate their rig using a 2D axis input from an input system action.
ActivateEvent
UnityEvent that Unity invokes when the selecting Interactor activates an Interactable.
ActivateEventArgs
Event data associated with the event when the selecting Interactor activates an Interactable.
BaseInteractionEventArgs
Event data associated with an interaction event between an Interactor and Interactable.
BaseRegistrationEventArgs
Event data associated with a registration event with an XRInteractionManager.
BaseTeleportationInteractable
This is intended to be the base class for all Teleportation Interactables. This abstracts the teleport request process for specializations of this class.
CanSelectMultipleAttribute
Add this attribute to an XR Interaction component to control whether to allow or disallow multiple selection mode.
CharacterControllerDriver
Controls a CharacterController height upon locomotion events of a LocomotionProvider.
ContinuousMoveProviderBase
Locomotion provider that allows the user to smoothly move their rig continuously over time.
ContinuousTurnProviderBase
Locomotion provider that allows the user to smoothly rotate their rig continuously over time.
DeactivateEvent
UnityEvent that Unity invokes when the selecting Interactor deactivates an Interactable.
DeactivateEventArgs
Event data associated with the event when the selecting Interactor deactivates an Interactable.
DeviceBasedContinuousMoveProvider
Locomotion provider that allows the user to smoothly move their rig continuously over time using a specified 2D axis input.
DeviceBasedContinuousTurnProvider
Locomotion provider that allows the user to smoothly rotate their rig continuously over time using a specified 2D axis input.
DeviceBasedSnapTurnProvider
A locomotion provider that allows the user to rotate their rig using a specified 2D axis input. The provider can take input from multiple different devices (such as Left and Right hands).
GizmoHelpers
Utility functions related to Gizmos.
HoverEnterEvent
UnityEvent that Unity invokes when an Interactor first initiates hovering over an Interactable.
HoverEnterEventArgs
Event data associated with the event when an Interactor first initiates hovering over an Interactable.
HoverExitEvent
UnityEvent that Unity invokes when an Interactor ends hovering over an Interactable.
HoverExitEventArgs
Event data associated with the event when an Interactor ends hovering over an Interactable.
InputHelpers
Helper class for different kinds of input.
InteractableRegisteredEventArgs
Event data associated with the event when an Interactable is registered with an XRInteractionManager.
InteractableUnregisteredEventArgs
Event data associated with the event when an Interactable is unregistered from an XRInteractionManager.
InteractorRegisteredEventArgs
Event data associated with the event when an Interactor is registered with an XRInteractionManager.
InteractorUnregisteredEventArgs
Event data associated with the event when an Interactor is unregistered from an XRInteractionManager.
LocomotionProvider
The LocomotionProvider is the base class for various locomotion implementations. This class provides simple ways to interrogate the LocomotionSystem for whether a locomotion can begin and simple events for hooking into a start/end locomotion.
LocomotionSystem
The LocomotionSystem object is used to control access to the XR Origin. This system enforces that only one Locomotion Provider can move the XR Origin at one time. This is the only place that access to an XR Origin is controlled, having multiple instances of a LocomotionSystem drive a single XR Origin is not recommended.
SelectEnterEvent
UnityEvent that Unity invokes when an Interactor initiates selecting an Interactable.
SelectEnterEventArgs
Event data associated with the event when an Interactor initiates selecting an Interactable.
SelectExitEvent
UnityEvent that Unity invokes when an Interactor ends selecting an Interactable.
SelectExitEventArgs
Event data associated with the event when an Interactor ends selecting an Interactable.
SnapTurnProviderBase
A locomotion provider that allows the user to rotate their rig using a 2D axis input.
TeleportationAnchor
An anchor is a teleportation destination which teleports the user to a pre-determined specific position and/or rotation.
TeleportationArea
An area is a teleportation destination which teleports the user to their pointed location on a surface.
TeleportationProvider
The TeleportationProvider is responsible for moving the XR Origin to the desired location on the user's request.
TeleportingEvent
UnityEvent that Unity invokes when queuing to teleport via a TeleportationProvider.
TeleportingEventArgs
Event data associated with the event that Unity invokes during a selection or activation event between an Interactable and an Interactor, according to the timing defined by BaseTeleportationInteractable.TeleportTrigger.
XRBaseController
Interprets feature values on a tracked input controller device into XR Interaction states, such as Select. Additionally, it applies the current pose value of a tracked device to the transform of the GameObject.
XRBaseControllerInteractor
Abstract base class from which all interactors that are controller-driven derive. This class hooks into the interaction system (via XRInteractionManager) and provides base virtual methods for handling hover and selection. Additionally, this class provides functionality for checking the controller's selection status and hiding the controller on selection.
XRBaseInteractable
Abstract base class from which all interactable behaviours derive. This class hooks into the interaction system (via XRInteractionManager) and provides base virtual methods for handling hover and selection.
XRBaseInteractor
Abstract base class from which all interactor behaviours derive. This class hooks into the interaction system (via XRInteractionManager) and provides base virtual methods for handling hover and selection.
XRController
Interprets feature values on a tracked input controller device from the XR input subsystem into XR Interaction states, such as Select. Additionally, it applies the current Pose value of a tracked device to the transform of the GameObject.
XRControllerRecorder
MonoBehaviour that controls interaction recording and playback (via XRControllerRecording assets).
XRControllerRecording
The XRControllerRecording ScriptableObject stores position, rotation, and Interaction state changes from the XR Controller for playback.
XRControllerState
Represents the current state of the XRBaseController.
XRDirectInteractor
Interactor used for directly interacting with interactables that are touching. This is handled via trigger volumes that update the current set of valid targets for this interactor. This component must have a collision volume that is set to be a trigger to work.
XRGrabInteractable
Interactable component that allows basic "grab" functionality. Can attach to a selecting Interactor and follow it around while obeying physics (and inherit velocity when released).
XRHoverInteractableExtensions
Extension methods for IXRHoverInteractable.
XRHoverInteractorExtensions
Extension methods for IXRHoverInteractor.
XRInteractableEvent
UnityEvent that responds to changes of hover, selection, and activation by this Interactable.
XRInteractionManager
The Interaction Manager acts as an intermediary between Interactors and Interactables. It is possible to have multiple Interaction Managers, each with their own valid set of Interactors and Interactables. Upon being enabled, both Interactors and Interactables register themselves with a valid Interaction Manager (if a specific one has not already been assigned in the inspector). The loaded scenes must have at least one Interaction Manager for Interactors and Interactables to be able to communicate.
XRInteractionUpdateOrder
The update order for MonoBehaviours in XR Interaction.
XRInteractorEvent
UnityEvent that responds to changes of hover and selection by this Interactor.
XRInteractorLineVisual
Interactor helper object aligns a LineRenderer with the Interactor.
XRInteractorReticleVisual
Interactor helper object that draws a targeting reticlePrefab over a ray casted point in front of the Interactor.
XRRayInteractor
Interactor used for interacting with interactables at a distance. This is handled via ray casts that update the current set of valid targets for this interactor.
XRRayInteractor.RaycastHitComparer
Compares ray cast hits by distance, to sort in ascending order.
XRRig
(Deprecated) The XR Rig component is typically attached to the base object of the XR Rig, and stores the GameObject that will be manipulated via locomotion. It is also used for offsetting the camera.
XRSelectInteractableExtensions
Extension methods for IXRSelectInteractable.
XRSelectInteractorExtensions
Extension methods for IXRSelectInteractor.
XRSimpleInteractable
This is the simplest version of an Interactable object. It simply provides a concrete implementation of the XRBaseInteractable. It is intended to be used as a way to respond to hoverEntered/hoverExited and selectEntered/selectExited events with no underlying interaction behavior.
XRSocketInteractor
Interactor used for holding interactables via a socket. This component is not designed to be attached to a controller (thus does not derive from XRBaseControllerInteractor) and instead will always attempt to select an interactable that it is hovering over.
XRTintInteractableVisual
Simple Interactable Visual component that demonstrates hover or selection state with emissive tinting. Note: requires use of a shader that supports emission (such as Standard shader) with the variant included in the game build.
Structs
InteractionLayerMask
Specifies Interaction Layers to use in XR interactions.
InteractionState
InteractionState type to hold current state for a given interaction.
TeleportRequest
The Teleport Request that describes the result of the teleportation action. Each Teleportation Interactable must fill out a Teleport Request for each teleport action.
Interfaces
ILineRenderable
Get line points and hit point info for rendering.
IXRActivateInteractable
An interface that represents an Interactable component which Interactor components can activate. Not to be confused with the active state of a GameObject, an activate event in this context refers to a contextual command action, such as toggling a flashlight on and off.
IXRActivateInteractor
An interface that represents an Interactor component that can activate an Interactable component. Not to be confused with the active state of a GameObject, an activate event in this context refers to a contextual command action, such as toggling a flashlight on and off.
IXRCustomReticleProvider
An interface that allows Interactables to request that an Interactor use a custom reticle.
IXRHoverInteractable
An interface that represents an Interactable component which Interactor components can hover over.
IXRHoverInteractor
An interface that represents an Interactor component that can hover over an Interactable component.
IXRInteractable
An interface that represents an Interactable component that controls how a GameObject interacts with an Interactor component. An example is a Grab Interactable which can be picked up and moved by an Interactor.
IXRInteractor
An interface that represents an Interactor component that controls how a GameObject interacts with an Interactable component. An example is a Ray Interactor which uses ray casting to find valid Interactable objects to manipulate.
IXRSelectInteractable
An interface that represents an Interactable component which an Interactor component can select.
IXRSelectInteractor
An interface that represents an Interactor component that can select an Interactable component.
Enums
BaseTeleportationInteractable.TeleportTrigger
Indicates when the teleportation action happens.
ContinuousMoveProviderBase.GravityApplicationMode
Defines when gravity begins to take effect.
DeviceBasedContinuousMoveProvider.InputAxes
Sets which input axis to use when reading from controller input.
DeviceBasedContinuousTurnProvider.InputAxes
Sets which input axis to use when reading from controller input.
DeviceBasedSnapTurnProvider.InputAxes
Sets which input axis to use when reading from controller input.
InputHelpers.Button
A list of buttons that can be bound to.
InteractableSelectMode
Options for the selection policy of an Interactable.
MatchOrientation
The option of which object's orientation in the rig Unity matches with the destination after teleporting.
RequestResult
The result of a locomotion request.
XRBaseController.UpdateType
The time within the frame that controller pose will be sampled.
XRBaseControllerInteractor.InputTriggerType
This defines the type of input that triggers an interaction.
XRBaseInteractable.MovementType
Options for how to process and perform movement of an Interactable.
XRGrabInteractable.AttachPointCompatibilityMode
Controls the method used when calculating the target position of the object.
XRInteractionUpdateOrder.UpdatePhase
The phase in which updates happen.
XRRayInteractor.HitDetectionType
Sets which shape of physics cast to use for the cast when detecting collisions.
XRRayInteractor.LineType
Sets which trajectory path Unity uses for the cast when detecting collisions.