docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class ConstrainedMoveProvider

    Base class for a locomotion provider that allows for constrained movement with a CharacterController.

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    LocomotionProvider
    ConstrainedMoveProvider
    GrabMoveProvider
    TwoHandedGrabMoveProvider
    Inherited Members
    LocomotionProvider.mediator
    LocomotionProvider.transformationPriority
    LocomotionProvider.locomotionState
    LocomotionProvider.isLocomotionActive
    LocomotionProvider.canStartMoving
    LocomotionProvider.locomotionStateChanged
    LocomotionProvider.locomotionStarted
    LocomotionProvider.locomotionEnded
    LocomotionProvider.beforeStepLocomotion
    LocomotionProvider.afterStepLocomotion
    LocomotionProvider.OnDisable()
    LocomotionProvider.TryPrepareLocomotion()
    LocomotionProvider.TryStartLocomotionImmediately()
    LocomotionProvider.TryEndLocomotion()
    LocomotionProvider.OnLocomotionStarting()
    LocomotionProvider.OnLocomotionEnding()
    LocomotionProvider.OnLocomotionStateChanging(LocomotionState)
    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.destroyCancellationToken
    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.GetComponentIndex()
    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.InstantiateAsync<T>(T)
    Object.InstantiateAsync<T>(T, Transform)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int)
    Object.InstantiateAsync<T>(T, int, Transform)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, int, Transform, Vector3, Quaternion)
    Object.InstantiateAsync<T>(T, int, Transform, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>)
    Object.InstantiateAsync<T>(T, InstantiateParameters)
    Object.InstantiateAsync<T>(T, int, InstantiateParameters)
    Object.InstantiateAsync<T>(T, Vector3, Quaternion, InstantiateParameters)
    Object.InstantiateAsync<T>(T, int, Vector3, Quaternion, InstantiateParameters)
    Object.InstantiateAsync<T>(T, int, ReadOnlySpan<Vector3>, ReadOnlySpan<Quaternion>, InstantiateParameters)
    Object.Instantiate(Object, Vector3, Quaternion)
    Object.Instantiate(Object, Vector3, Quaternion, Transform)
    Object.Instantiate(Object)
    Object.Instantiate(Object, Scene)
    Object.Instantiate<T>(T, InstantiateParameters)
    Object.Instantiate<T>(T, Vector3, Quaternion, InstantiateParameters)
    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
    [MovedFrom("UnityEngine.XR.Interaction.Toolkit")]
    public abstract class ConstrainedMoveProvider : LocomotionProvider

    Properties

    enableFreeXMovement

    Controls whether to enable unconstrained movement along the x-axis.

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

    enableFreeYMovement

    Controls whether to enable unconstrained movement along the y-axis.

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

    enableFreeZMovement

    Controls whether to enable unconstrained movement along the z-axis.

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

    gravityProvider

    The gravity provider that applies gravity. When this reference is not set, gravity will be computed and applied by this component when moving the rig. If one is not provided, this provider will attempt to locate one at startup.

    Declaration
    public GravityProvider gravityProvider { get; set; }
    Property Value
    Type Description
    GravityProvider
    See Also
    LocomotionProvider

    transformation

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

    Declaration
    public XROriginMovement transformation { get; set; }
    Property Value
    Type Description
    XROriginMovement
    See Also
    LocomotionProvider

    Methods

    Awake()

    See MonoBehaviour.

    Declaration
    protected override void Awake()
    Overrides
    LocomotionProvider.Awake()
    See Also
    LocomotionProvider

    ComputeDesiredMove(out bool)

    Determines how much to move the rig.

    Declaration
    protected abstract 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.

    See Also
    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 virtual 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).

    See Also
    LocomotionProvider

    OnEnable()

    See MonoBehaviour.

    Declaration
    protected override void OnEnable()
    Overrides
    LocomotionProvider.OnEnable()
    See Also
    LocomotionProvider

    Start()

    See MonoBehaviour.

    Declaration
    protected void Start()
    See Also
    LocomotionProvider

    Update()

    See MonoBehaviour.

    Declaration
    protected void Update()
    See Also
    LocomotionProvider

    See Also

    LocomotionProvider
    In This Article
    Back to top
    Copyright © 2026 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)