docs.unity3d.com
    Show / Hide Table of Contents

    Class ARSelectionInteractable

    Controls the selection of an object via a Tap gesture.

    Inheritance
    Object
    Object
    Component
    Behaviour
    MonoBehaviour
    XRBaseInteractable
    ARBaseGestureInteractable
    ARSelectionInteractable
    Inherited Members
    ARBaseGestureInteractable.xrOrigin
    ARBaseGestureInteractable.gestureInteractor
    ARBaseGestureInteractable.Reset()
    ARBaseGestureInteractable.Awake()
    ARBaseGestureInteractable.OnEnable()
    ARBaseGestureInteractable.IsHoverableBy(IXRHoverInteractor)
    ARBaseGestureInteractable.CanStartManipulationForGesture(DragGesture)
    ARBaseGestureInteractable.CanStartManipulationForGesture(PinchGesture)
    ARBaseGestureInteractable.CanStartManipulationForGesture(TwistGesture)
    ARBaseGestureInteractable.CanStartManipulationForGesture(TwoFingerDragGesture)
    ARBaseGestureInteractable.OnStartManipulation(DragGesture)
    ARBaseGestureInteractable.OnStartManipulation(PinchGesture)
    ARBaseGestureInteractable.OnStartManipulation(TapGesture)
    ARBaseGestureInteractable.OnStartManipulation(TwistGesture)
    ARBaseGestureInteractable.OnStartManipulation(TwoFingerDragGesture)
    ARBaseGestureInteractable.OnContinueManipulation(DragGesture)
    ARBaseGestureInteractable.OnContinueManipulation(PinchGesture)
    ARBaseGestureInteractable.OnContinueManipulation(TapGesture)
    ARBaseGestureInteractable.OnContinueManipulation(TwistGesture)
    ARBaseGestureInteractable.OnContinueManipulation(TwoFingerDragGesture)
    ARBaseGestureInteractable.OnEndManipulation(DragGesture)
    ARBaseGestureInteractable.OnEndManipulation(PinchGesture)
    ARBaseGestureInteractable.OnEndManipulation(TwistGesture)
    ARBaseGestureInteractable.OnEndManipulation(TwoFingerDragGesture)
    ARBaseGestureInteractable.IsGameObjectSelected()
    ARBaseGestureInteractable.ConnectGestureInteractor()
    ARBaseGestureInteractable.DisconnectGestureInteractor()
    ARBaseGestureInteractable.OnRegistered(InteractableRegisteredEventArgs)
    ARBaseGestureInteractable.OnUnregistered(InteractableUnregisteredEventArgs)
    ARBaseGestureInteractable.arSessionOrigin
    ARBaseGestureInteractable.IsHoverableBy(XRBaseInteractor)
    XRBaseInteractable.registered
    XRBaseInteractable.unregistered
    XRBaseInteractable.getDistanceOverride
    XRBaseInteractable.interactionManager
    XRBaseInteractable.colliders
    XRBaseInteractable.interactionLayers
    XRBaseInteractable.distanceCalculationMode
    XRBaseInteractable.selectMode
    XRBaseInteractable.customReticle
    XRBaseInteractable.firstHoverEntered
    XRBaseInteractable.lastHoverExited
    XRBaseInteractable.hoverEntered
    XRBaseInteractable.hoverExited
    XRBaseInteractable.firstSelectEntered
    XRBaseInteractable.lastSelectExited
    XRBaseInteractable.selectEntered
    XRBaseInteractable.selectExited
    XRBaseInteractable.activated
    XRBaseInteractable.deactivated
    XRBaseInteractable.interactorsHovering
    XRBaseInteractable.isHovered
    XRBaseInteractable.interactorsSelecting
    XRBaseInteractable.firstInteractorSelecting
    XRBaseInteractable.isSelected
    XRBaseInteractable.OnDisable()
    XRBaseInteractable.OnDestroy()
    XRBaseInteractable.GetAttachTransform(IXRInteractor)
    XRBaseInteractable.GetAttachPoseOnSelect(IXRSelectInteractor)
    XRBaseInteractable.GetLocalAttachPoseOnSelect(IXRSelectInteractor)
    XRBaseInteractable.GetDistanceSqrToInteractor(IXRInteractor)
    XRBaseInteractable.GetDistance(Vector3)
    XRBaseInteractable.AttachCustomReticle(IXRInteractor)
    XRBaseInteractable.RemoveCustomReticle(IXRInteractor)
    XRBaseInteractable.CaptureAttachPose(IXRSelectInteractor)
    XRBaseInteractable.ProcessInteractable(XRInteractionUpdateOrder.UpdatePhase)
    XRBaseInteractable.IXRInteractable.OnRegistered(InteractableRegisteredEventArgs)
    XRBaseInteractable.IXRInteractable.OnUnregistered(InteractableUnregisteredEventArgs)
    XRBaseInteractable.IXRActivateInteractable.OnActivated(ActivateEventArgs)
    XRBaseInteractable.IXRActivateInteractable.OnDeactivated(DeactivateEventArgs)
    XRBaseInteractable.IXRHoverInteractable.IsHoverableBy(IXRHoverInteractor)
    XRBaseInteractable.IXRHoverInteractable.OnHoverEntering(HoverEnterEventArgs)
    XRBaseInteractable.IXRHoverInteractable.OnHoverEntered(HoverEnterEventArgs)
    XRBaseInteractable.IXRHoverInteractable.OnHoverExiting(HoverExitEventArgs)
    XRBaseInteractable.IXRHoverInteractable.OnHoverExited(HoverExitEventArgs)
    XRBaseInteractable.IXRSelectInteractable.IsSelectableBy(IXRSelectInteractor)
    XRBaseInteractable.IXRSelectInteractable.OnSelectEntering(SelectEnterEventArgs)
    XRBaseInteractable.IXRSelectInteractable.OnSelectEntered(SelectEnterEventArgs)
    XRBaseInteractable.IXRSelectInteractable.OnSelectExiting(SelectExitEventArgs)
    XRBaseInteractable.IXRSelectInteractable.OnSelectExited(SelectExitEventArgs)
    XRBaseInteractable.OnHoverEntering(HoverEnterEventArgs)
    XRBaseInteractable.OnHoverEntered(HoverEnterEventArgs)
    XRBaseInteractable.OnHoverExiting(HoverExitEventArgs)
    XRBaseInteractable.OnHoverExited(HoverExitEventArgs)
    XRBaseInteractable.OnSelectEntered(SelectEnterEventArgs)
    XRBaseInteractable.OnSelectExited(SelectExitEventArgs)
    XRBaseInteractable.OnActivated(ActivateEventArgs)
    XRBaseInteractable.OnDeactivated(DeactivateEventArgs)
    XRBaseInteractable.interactionLayerMask
    XRBaseInteractable.onFirstHoverEntered
    XRBaseInteractable.onLastHoverExited
    XRBaseInteractable.onHoverEntered
    XRBaseInteractable.onHoverExited
    XRBaseInteractable.onSelectEntered
    XRBaseInteractable.onSelectExited
    XRBaseInteractable.onSelectCanceled
    XRBaseInteractable.onActivate
    XRBaseInteractable.onDeactivate
    XRBaseInteractable.onFirstHoverEnter
    XRBaseInteractable.onHoverEnter
    XRBaseInteractable.onHoverExit
    XRBaseInteractable.onLastHoverExit
    XRBaseInteractable.onSelectEnter
    XRBaseInteractable.onSelectExit
    XRBaseInteractable.onSelectCancel
    XRBaseInteractable.OnHoverEntering(XRBaseInteractor)
    XRBaseInteractable.OnHoverEntered(XRBaseInteractor)
    XRBaseInteractable.OnHoverExiting(XRBaseInteractor)
    XRBaseInteractable.OnHoverExited(XRBaseInteractor)
    XRBaseInteractable.OnSelectEntering(XRBaseInteractor)
    XRBaseInteractable.OnSelectEntered(XRBaseInteractor)
    XRBaseInteractable.OnSelectExiting(XRBaseInteractor)
    XRBaseInteractable.OnSelectExited(XRBaseInteractor)
    XRBaseInteractable.OnSelectCanceling(XRBaseInteractor)
    XRBaseInteractable.OnSelectCanceled(XRBaseInteractor)
    XRBaseInteractable.OnActivate(XRBaseInteractor)
    XRBaseInteractable.OnDeactivate(XRBaseInteractor)
    XRBaseInteractable.GetDistanceSqrToInteractor(XRBaseInteractor)
    XRBaseInteractable.AttachCustomReticle(XRBaseInteractor)
    XRBaseInteractable.RemoveCustomReticle(XRBaseInteractor)
    XRBaseInteractable.hoveringInteractors
    XRBaseInteractable.selectingInteractor
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(String, Single)
    MonoBehaviour.InvokeRepeating(String, Single, Single)
    MonoBehaviour.CancelInvoke(String)
    MonoBehaviour.IsInvoking(String)
    MonoBehaviour.StartCoroutine(String)
    MonoBehaviour.StartCoroutine(String, Object)
    MonoBehaviour.StartCoroutine(IEnumerator)
    MonoBehaviour.StartCoroutine_Auto(IEnumerator)
    MonoBehaviour.StopCoroutine(IEnumerator)
    MonoBehaviour.StopCoroutine(Coroutine)
    MonoBehaviour.StopCoroutine(String)
    MonoBehaviour.StopAllCoroutines()
    MonoBehaviour.print(Object)
    MonoBehaviour.useGUILayout
    MonoBehaviour.runInEditMode
    Behaviour.enabled
    Behaviour.isActiveAndEnabled
    Component.GetComponent(Type)
    Component.GetComponent<T>()
    Component.TryGetComponent(Type, Component)
    Component.TryGetComponent<T>(T)
    Component.GetComponent(String)
    Component.GetComponentInChildren(Type, Boolean)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(Boolean)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, Boolean)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(Boolean)
    Component.GetComponentsInChildren<T>(Boolean, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, Boolean)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(Boolean)
    Component.GetComponentsInParent<T>(Boolean, List<T>)
    Component.GetComponentsInParent<T>()
    Component.GetComponents(Type)
    Component.GetComponents(Type, List<Component>)
    Component.GetComponents<T>(List<T>)
    Component.GetComponents<T>()
    Component.CompareTag(String)
    Component.SendMessageUpwards(String, Object, SendMessageOptions)
    Component.SendMessageUpwards(String, Object)
    Component.SendMessageUpwards(String)
    Component.SendMessageUpwards(String, SendMessageOptions)
    Component.SendMessage(String, Object)
    Component.SendMessage(String)
    Component.SendMessage(String, Object, SendMessageOptions)
    Component.SendMessage(String, SendMessageOptions)
    Component.BroadcastMessage(String, Object, SendMessageOptions)
    Component.BroadcastMessage(String, Object)
    Component.BroadcastMessage(String)
    Component.BroadcastMessage(String, SendMessageOptions)
    Component.transform
    Component.gameObject
    Component.tag
    Component.rigidbody
    Component.rigidbody2D
    Component.camera
    Component.light
    Component.animation
    Component.constantForce
    Component.renderer
    Component.audio
    Component.networkView
    Component.collider
    Component.collider2D
    Component.hingeJoint
    Component.particleSystem
    Object.GetInstanceID()
    Object.GetHashCode()
    Object.Equals(Object)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Transform)
    Object.Instantiate(Object, Transform, Boolean)
    Object.Instantiate<T>(T)
    Object.Instantiate<T>(T, Vector3, Quaternion)
    Object.Instantiate<T>(T, Vector3, Quaternion, Transform)
    Object.Instantiate<T>(T, Transform)
    Object.Instantiate<T>(T, Transform, Boolean)
    Object.Destroy(Object, Single)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, Boolean)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.DontDestroyOnLoad(Object)
    Object.DestroyObject(Object, Single)
    Object.DestroyObject(Object)
    Object.FindSceneObjectsOfType(Type)
    Object.FindObjectsOfTypeIncludingAssets(Type)
    Object.FindObjectsOfType<T>()
    Object.FindObjectOfType<T>()
    Object.FindObjectsOfTypeAll(Type)
    Object.FindObjectOfType(Type)
    Object.ToString()
    Object.name
    Object.hideFlags
    Object.Equals(Object, Object)
    Object.ReferenceEquals(Object, Object)
    Object.GetType()
    Object.MemberwiseClone()
    Namespace: UnityEngine.XR.Interaction.Toolkit.AR
    Syntax
    [AddComponentMenu("XR/AR Selection Interactable", 22)]
    [HelpURL("https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@2.1/api/UnityEngine.XR.Interaction.Toolkit.AR.ARSelectionInteractable.html")]
    public class ARSelectionInteractable : ARBaseGestureInteractable, IXRActivateInteractable, IXRHoverInteractable, IXRSelectInteractable, IXRInteractable

    Properties

    selectionVisualization

    The visualization GameObject that will become active when the object is selected.

    Declaration
    public GameObject selectionVisualization { get; set; }
    Property Value
    Type Description
    GameObject

    Methods

    CanStartManipulationForGesture(TapGesture)

    Determines if the manipulation can start for the given gesture.

    Declaration
    protected override bool CanStartManipulationForGesture(TapGesture gesture)
    Parameters
    Type Name Description
    TapGesture gesture

    The current gesture.

    Returns
    Type Description
    Boolean

    Returns true if the manipulation can start. Otherwise, returns false.

    Overrides
    ARBaseGestureInteractable.CanStartManipulationForGesture(TapGesture)

    IsSelectableBy(IXRSelectInteractor)

    Determines if a given Interactor can select this Interactable.

    Declaration
    public override bool IsSelectableBy(IXRSelectInteractor interactor)
    Parameters
    Type Name Description
    IXRSelectInteractor interactor

    Interactor to check for a valid selection with.

    Returns
    Type Description
    Boolean

    Returns true if selection is valid this frame. Returns false if not.

    Overrides
    ARBaseGestureInteractable.IsSelectableBy(IXRSelectInteractor)
    See Also
    CanSelect(IXRSelectInteractable)

    IsSelectableBy(XRBaseInteractor)

    (Deprecated) Determines if a given Interactor can select this Interactable.

    Declaration
    [Obsolete("IsSelectableBy(XRBaseInteractor) has been deprecated. Use IsSelectableBy(IXRSelectInteractor) instead.")]
    public override bool IsSelectableBy(XRBaseInteractor interactor)
    Parameters
    Type Name Description
    XRBaseInteractor interactor

    Interactor to check for a valid selection with.

    Returns
    Type Description
    Boolean

    Returns true if selection is valid this frame. Returns false if not.

    Overrides
    ARBaseGestureInteractable.IsSelectableBy(XRBaseInteractor)
    Remarks

    IsSelectableBy(XRBaseInteractor) has been deprecated. Use IsSelectableBy(IXRSelectInteractor) instead.

    See Also
    CanSelect(XRBaseInteractable)

    OnEndManipulation(TapGesture)

    Unity calls this method automatically when the manipulation ends.

    Declaration
    protected override void OnEndManipulation(TapGesture gesture)
    Parameters
    Type Name Description
    TapGesture gesture

    The current gesture.

    Overrides
    ARBaseGestureInteractable.OnEndManipulation(TapGesture)
    See Also
    onFinished

    OnSelectEntering(SelectEnterEventArgs)

    The XRInteractionManager calls this method right before the Interactor first initiates selection of an Interactable in a first pass.

    Declaration
    protected override void OnSelectEntering(SelectEnterEventArgs args)
    Parameters
    Type Name Description
    SelectEnterEventArgs args

    Event data containing the Interactor that is initiating the selection.

    Overrides
    XRBaseInteractable.OnSelectEntering(SelectEnterEventArgs)
    Remarks

    args is only valid during this method call, do not hold a reference to it.

    See Also
    OnSelectEntered(SelectEnterEventArgs)

    OnSelectExiting(SelectExitEventArgs)

    The XRInteractionManager calls this method right before the Interactor ends selection of an Interactable in a first pass.

    Declaration
    protected override void OnSelectExiting(SelectExitEventArgs args)
    Parameters
    Type Name Description
    SelectExitEventArgs args

    Event data containing the Interactor that is ending the selection.

    Overrides
    XRBaseInteractable.OnSelectExiting(SelectExitEventArgs)
    Remarks

    args is only valid during this method call, do not hold a reference to it.

    See Also
    OnSelectExited(SelectExitEventArgs)

    Extension Methods

    XRHoverInteractableExtensions.GetOldestInteractorHovering(IXRHoverInteractable)
    XRSelectInteractableExtensions.GetOldestInteractorSelecting(IXRSelectInteractable)
    Back to top
    Terms of use
    Copyright © 2023 Unity Technologies — Terms of use
    • Legal
    • Privacy Policy
    • Cookies
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)
    "Unity", Unity logos, and other Unity trademarks are trademarks or registered trademarks of Unity Technologies or its affiliates in the U.S. and elsewhere (more info here). Other names or brands are trademarks of their respective owners.
    Generated by DocFX on 18 October 2023