docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class TwoHandedGrabMoveProvider

    Allows the user to combine two GrabMoveProvider instances for locomotion. This allows the user to translate, scale, and rotate themselves counter to transformations of the line segment between both hands.

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    LocomotionProvider
    ConstrainedMoveProvider
    TwoHandedGrabMoveProvider
    Inherited Members
    ConstrainedMoveProvider.enableFreeXMovement
    ConstrainedMoveProvider.enableFreeYMovement
    ConstrainedMoveProvider.enableFreeZMovement
    ConstrainedMoveProvider.useGravity
    ConstrainedMoveProvider.transformation
    ConstrainedMoveProvider.Update()
    LocomotionProvider.mediator
    LocomotionProvider.transformationPriority
    LocomotionProvider.locomotionState
    LocomotionProvider.isLocomotionActive
    LocomotionProvider.canStartMoving
    LocomotionProvider.locomotionStarted
    LocomotionProvider.locomotionEnded
    LocomotionProvider.beforeStepLocomotion
    LocomotionProvider.Awake()
    LocomotionProvider.TryPrepareLocomotion()
    LocomotionProvider.TryStartLocomotionImmediately()
    LocomotionProvider.TryEndLocomotion()
    LocomotionProvider.OnLocomotionStarting()
    LocomotionProvider.OnLocomotionEnding()
    LocomotionProvider.TryQueueTransformation(IXRBodyTransformation)
    LocomotionProvider.TryQueueTransformation(IXRBodyTransformation, int)
    MonoBehaviour.IsInvoking()
    MonoBehaviour.CancelInvoke()
    MonoBehaviour.Invoke(string, float)
    MonoBehaviour.InvokeRepeating(string, float, float)
    MonoBehaviour.CancelInvoke(string)
    MonoBehaviour.IsInvoking(string)
    MonoBehaviour.StartCoroutine(string)
    MonoBehaviour.StartCoroutine(string, object)
    MonoBehaviour.StartCoroutine(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, out Component)
    Component.TryGetComponent<T>(out T)
    Component.GetComponent(string)
    Component.GetComponentInChildren(Type, bool)
    Component.GetComponentInChildren(Type)
    Component.GetComponentInChildren<T>(bool)
    Component.GetComponentInChildren<T>()
    Component.GetComponentsInChildren(Type, bool)
    Component.GetComponentsInChildren(Type)
    Component.GetComponentsInChildren<T>(bool)
    Component.GetComponentsInChildren<T>(bool, List<T>)
    Component.GetComponentsInChildren<T>()
    Component.GetComponentsInChildren<T>(List<T>)
    Component.GetComponentInParent(Type, bool)
    Component.GetComponentInParent(Type)
    Component.GetComponentInParent<T>(bool)
    Component.GetComponentInParent<T>()
    Component.GetComponentsInParent(Type, bool)
    Component.GetComponentsInParent(Type)
    Component.GetComponentsInParent<T>(bool)
    Component.GetComponentsInParent<T>(bool, 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
    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, bool)
    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, bool)
    Object.Destroy(Object, float)
    Object.Destroy(Object)
    Object.DestroyImmediate(Object, bool)
    Object.DestroyImmediate(Object)
    Object.FindObjectsOfType(Type)
    Object.FindObjectsOfType(Type, bool)
    Object.FindObjectsByType(Type, FindObjectsSortMode)
    Object.FindObjectsByType(Type, FindObjectsInactive, FindObjectsSortMode)
    Object.DontDestroyOnLoad(Object)
    Object.FindObjectsOfType<T>()
    Object.FindObjectsByType<T>(FindObjectsSortMode)
    Object.FindObjectsOfType<T>(bool)
    Object.FindObjectsByType<T>(FindObjectsInactive, FindObjectsSortMode)
    Object.FindObjectOfType<T>()
    Object.FindObjectOfType<T>(bool)
    Object.FindFirstObjectByType<T>()
    Object.FindAnyObjectByType<T>()
    Object.FindFirstObjectByType<T>(FindObjectsInactive)
    Object.FindAnyObjectByType<T>(FindObjectsInactive)
    Object.FindObjectOfType(Type)
    Object.FindFirstObjectByType(Type)
    Object.FindAnyObjectByType(Type)
    Object.FindObjectOfType(Type, bool)
    Object.FindFirstObjectByType(Type, FindObjectsInactive)
    Object.FindAnyObjectByType(Type, FindObjectsInactive)
    Object.ToString()
    Object.name
    Object.hideFlags
    object.Equals(object, object)
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: UnityEngine.XR.Interaction.Toolkit.Locomotion.Movement
    Assembly: Unity.XR.Interaction.Toolkit.dll
    Syntax
    [DefaultExecutionOrder(-209)]
    [AddComponentMenu("XR/Locomotion/Two-Handed Grab Move Provider", 11)]
    [HelpURL("https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@3.0/api/UnityEngine.XR.Interaction.Toolkit.Locomotion.Movement.TwoHandedGrabMoveProvider.html")]
    [MovedFrom("UnityEngine.XR.Interaction.Toolkit")]
    public class TwoHandedGrabMoveProvider : ConstrainedMoveProvider

    Properties

    enableRotation

    Controls whether to enable yaw rotation of the user.

    Declaration
    public bool enableRotation { get; set; }
    Property Value
    Type Description
    bool
    See Also
    GrabMoveProvider
    LocomotionProvider

    enableScaling

    Controls whether to enable uniform scaling of the user.

    Declaration
    public bool enableScaling { get; set; }
    Property Value
    Type Description
    bool
    See Also
    GrabMoveProvider
    LocomotionProvider

    leftGrabMoveProvider

    The left hand grab move instance which will be used as one half of two-handed locomotion.

    Declaration
    public GrabMoveProvider leftGrabMoveProvider { get; set; }
    Property Value
    Type Description
    GrabMoveProvider
    See Also
    GrabMoveProvider
    LocomotionProvider

    maximumScale

    The maximum user scale allowed.

    Declaration
    public float maximumScale { get; set; }
    Property Value
    Type Description
    float
    See Also
    GrabMoveProvider
    LocomotionProvider

    minimumScale

    The minimum user scale allowed.

    Declaration
    public float minimumScale { get; set; }
    Property Value
    Type Description
    float
    See Also
    GrabMoveProvider
    LocomotionProvider

    moveFactor

    The ratio of actual movement distance to controller movement distance.

    Declaration
    public float moveFactor { get; set; }
    Property Value
    Type Description
    float
    See Also
    GrabMoveProvider
    LocomotionProvider

    overrideSharedSettingsOnInit

    Controls whether to override the settings for individual handed providers with this provider's settings on initialization.

    Declaration
    public bool overrideSharedSettingsOnInit { get; set; }
    Property Value
    Type Description
    bool
    See Also
    GrabMoveProvider
    LocomotionProvider

    requireTwoHandsForTranslation

    Controls whether translation requires both grab move inputs to be active.

    Declaration
    public bool requireTwoHandsForTranslation { get; set; }
    Property Value
    Type Description
    bool
    See Also
    GrabMoveProvider
    LocomotionProvider

    rightGrabMoveProvider

    The right hand grab move instance which will be used as one half of two-handed locomotion.

    Declaration
    public GrabMoveProvider rightGrabMoveProvider { get; set; }
    Property Value
    Type Description
    GrabMoveProvider
    See Also
    GrabMoveProvider
    LocomotionProvider

    rotateTransformation

    The transformation that is used by this component to apply rotation movement.

    Declaration
    public XRBodyYawRotation rotateTransformation { get; set; }
    Property Value
    Type Description
    XRBodyYawRotation
    See Also
    GrabMoveProvider
    LocomotionProvider

    scaleTransformation

    The transformation that is used by this component to apply scaling.

    Declaration
    public XRBodyScale scaleTransformation { get; set; }
    Property Value
    Type Description
    XRBodyScale
    See Also
    GrabMoveProvider
    LocomotionProvider

    Methods

    ComputeDesiredMove(out bool)

    Determines how much to move the rig.

    Declaration
    protected override Vector3 ComputeDesiredMove(out bool attemptingMove)
    Parameters
    Type Name Description
    bool attemptingMove

    Whether the provider is attempting to move.

    Returns
    Type Description
    Vector3

    Returns the translation amount in world space to move the rig.

    Overrides
    ConstrainedMoveProvider.ComputeDesiredMove(out bool)
    See Also
    GrabMoveProvider
    LocomotionProvider

    MoveRig(Vector3)

    Creates a locomotion event to move the rig by translationInWorldSpace, and optionally restricts movement along each axis and applies gravity.

    Declaration
    protected override void MoveRig(Vector3 translationInWorldSpace)
    Parameters
    Type Name Description
    Vector3 translationInWorldSpace

    The translation amount in world space to move the rig (before restricting movement along each axis and applying gravity).

    Overrides
    ConstrainedMoveProvider.MoveRig(Vector3)
    See Also
    GrabMoveProvider
    LocomotionProvider

    OnDisable()

    See MonoBehaviour.

    Declaration
    protected void OnDisable()
    See Also
    GrabMoveProvider
    LocomotionProvider

    OnEnable()

    See MonoBehaviour.

    Declaration
    protected void OnEnable()
    See Also
    GrabMoveProvider
    LocomotionProvider

    See Also

    GrabMoveProvider
    LocomotionProvider
    In This Article
    Back to top
    Copyright © 2025 Unity Technologies — Trademarks and terms of use
    • Legal
    • Privacy Policy
    • Cookie Policy
    • Do Not Sell or Share My Personal Information
    • Your Privacy Choices (Cookie Settings)