Namespace UnityEngine.XR.Interaction.Toolkit.Interactors
Classes
NearFarInteractor
Interactor that uses two IInteractionCaster references to find valid targets. The near caster is simpler and not assumed to have any line based casting, while the far caster implements ICurveInteractionCaster to find valid targets, and optionally IUIModelUpdater which is used to support UI interaction and sort interaction points.
XRBaseInputInteractor
Abstract base class from which all interactors that use inputs to drive interaction state derive from.
XRBaseInputInteractor.LogicalInputState
Interpreted input from an input reader. Represents the logical state of an interaction input, such as the select input, which may not be the same as the physical state of the input.
XRBaseInteractor
Abstract base class from which all interactor behaviors derive. This class hooks into the interaction system (via XRInteractionManager) and provides base virtual methods for handling hover and selection.
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.
XRGazeInteractor
Interactor used for interacting with interactables via gaze. This extends XRRayInteractor and uses the same ray cast technique to update a current set of valid targets.
XRGroupMemberExtensions
Extension methods for IXRGroupMember.
XRHoverInteractorExtensions
Extension methods for IXRHoverInteractor.
XRInteractionGroup
Behaviour implementation of IXRInteractionGroup. An Interaction Group hooks into the interaction system (via XRInteractionManager) and enforces that only one IXRGroupMember within the Group can interact at a time. Each Group member must be either an IXRInteractor or an IXRInteractionGroup.
XRInteractionGroup.GroupNames
These correspond to the default names of the Interaction Groups in the sample XR Rig.
XRInteractorExtensions
Extension methods for IXRInteractor.
XRPokeInteractor
Interactor used for interacting with interactables through poking.
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.
XRSelectInteractorExtensions
Extension methods for IXRSelectInteractor.
XRSocketInteractor
Interactor used for holding interactables via a socket.
Interfaces
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.
IXRGroupMember
An interface that represents an object that can be contained as a member in an IXRInteractionGroup. A Group member can be either an Interactor or another Group. Only one member in a Group can perform interaction at a time.
IXRHoverInteractor
An interface that represents an Interactor component that can hover over an Interactable component.
IXRInteractionGroup
An interface that represents an Interaction Group component that enforces that only one IXRGroupMember within the Group can interact at a time.
IXRInteractionOverrideGroup
An interface that represents an Interaction Group component that is capable of overriding the interaction of the activeInteractor when another interactor tries to select any of the interactables being hovered or selected. An interactor can only override interaction when it is or is contained within a Group member that is configured as a possible override for the active Group member.
IXRInteractionStrengthInteractor
An interface that represents an Interactor component which
can express an interaction strength amount, which is a normalized value [0.0, 1.0]
that describes the strength of selection.
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.
IXRRayProvider
An interface that represents a Transform-driven XR Ray.
IXRScaleValueProvider
Defines an interface for scale value providers.
IXRSelectInteractor
An interface that represents an Interactor component that can select an Interactable component.
IXRTargetPriorityInteractor
An interface that represents an Interactor component that monitors the Interactables with priority for selection in a frame (called Targets), useful for custom feedback.
Enums
InteractorHandedness
Represents which hand or controller the interactor is associated with.
NearFarInteractor.NearCasterSortingStrategy
Enum used to determine the strategy used to compute the the distance used to sort valid targets discovered by the near interaction caster.
NearFarInteractor.Region
Enum used to keep track of whether the selection is currently occurring in the near-field or far-field region.
ScaleMode
Enum representing the two modes of scaling: ScaleOverTime and DistanceDelta.
SocketScaleMode
Enum used to determine how the socket should scale the interactable.
TargetPriorityMode
Options for how many Targets (or Interactables with priority for selection) to monitor.
XRBaseInputInteractor.InputTriggerType
This defines the type of input that triggers an interaction.
XRGazeInteractor.GazeAssistanceCalculation
Defines the way the gaze assistance calculates and sizes the assistance area.
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.
XRRayInteractor.QuerySnapVolumeInteraction
Sets whether ray cast queries hit Trigger colliders and include or ignore snap volume trigger colliders.
XRRayInteractor.RotateMode
Sets how Attach Transform rotation is controlled.