docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Class ContinuousMoveProvider

    Locomotion provider that allows the user to smoothly move their rig continuously over time based on read input values, such as from the controller thumbstick.

    Inheritance
    object
    Object
    Component
    Behaviour
    MonoBehaviour
    LocomotionProvider
    ContinuousMoveProvider
    Implements
    IGravityController
    Inherited Members
    LocomotionProvider.mediator
    LocomotionProvider.transformationPriority
    LocomotionProvider.locomotionState
    LocomotionProvider.isLocomotionActive
    LocomotionProvider.canStartMoving
    LocomotionProvider.locomotionStateChanged
    LocomotionProvider.locomotionStarted
    LocomotionProvider.locomotionEnded
    LocomotionProvider.beforeStepLocomotion
    LocomotionProvider.afterStepLocomotion
    LocomotionProvider.TryPrepareLocomotion()
    LocomotionProvider.TryStartLocomotionImmediately()
    LocomotionProvider.TryEndLocomotion()
    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
    [AddComponentMenu("XR/Locomotion/Continuous Move Provider", 11)]
    [HelpURL("https://docs.unity3d.com/Packages/com.unity.xr.interaction.toolkit@3.2/api/UnityEngine.XR.Interaction.Toolkit.Locomotion.Movement.ContinuousMoveProvider.html")]
    public class ContinuousMoveProvider : LocomotionProvider, IGravityController

    Properties

    canProcess

    Whether the gravity can be processed. Gravity controllers that can process receive queries to gravityPaused, controllers that cannot process do not.

    Declaration
    public bool canProcess { get; }
    Property Value
    Type Description
    bool
    Remarks

    It's recommended to return isActiveAndEnabled when implementing this interface in a MonoBehaviour.

    See Also
    LocomotionProvider
    ContinuousTurnProvider

    enableFly

    Controls whether to enable flying (unconstrained movement). This overrides the use of gravity.

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

    enableStrafe

    Controls whether to enable strafing (sideways movement).

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

    forwardSource

    The source Transform that defines the forward direction.

    Declaration
    public Transform forwardSource { get; set; }
    Property Value
    Type Description
    Transform
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    gravityPaused

    Whether gravity is paused.

    Declaration
    public bool gravityPaused { get; }
    Property Value
    Type Description
    bool
    See Also
    IsGravityBlocked()

    inAirControlModifier

    Determines how much control the player has while in the air (0 = no control, 1 = full control).

    Declaration
    public float inAirControlModifier { get; set; }
    Property Value
    Type Description
    float
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    leftHandMoveInput

    Reads input data from the left hand controller. Input Action must be a Value action type (Vector 2).

    Declaration
    public XRInputValueReader<Vector2> leftHandMoveInput { get; set; }
    Property Value
    Type Description
    XRInputValueReader<Vector2>
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    moveSpeed

    The speed, in units per second, to move forward.

    Declaration
    public float moveSpeed { get; set; }
    Property Value
    Type Description
    float
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    rightHandMoveInput

    Reads input data from the right hand controller. Input Action must be a Value action type (Vector 2).

    Declaration
    public XRInputValueReader<Vector2> rightHandMoveInput { get; set; }
    Property Value
    Type Description
    XRInputValueReader<Vector2>
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    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
    ContinuousTurnProvider

    Methods

    Awake()

    See MonoBehaviour.

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

    ComputeDesiredMove(Vector2)

    Determines how much to slide the rig due to input vector.

    Declaration
    protected virtual Vector3 ComputeDesiredMove(Vector2 input)
    Parameters
    Type Name Description
    Vector2 input

    Input vector, such as from a thumbstick.

    Returns
    Type Description
    Vector3

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

    See Also
    LocomotionProvider
    ContinuousTurnProvider

    MoveRig(Vector3)

    Creates a locomotion event to move the rig by translationInWorldSpace, and optionally 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 (pre-gravity).

    See Also
    LocomotionProvider
    ContinuousTurnProvider

    OnDisable()

    See MonoBehaviour.

    Declaration
    protected void OnDisable()
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    OnEnable()

    See MonoBehaviour.

    Declaration
    protected void OnEnable()
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    OnGravityLockChanged(GravityOverride)

    Called from TryLockGravity(IGravityController, GravityOverride) when gravity lock is changed.

    Declaration
    protected virtual void OnGravityLockChanged(GravityOverride gravityOverride)
    Parameters
    Type Name Description
    GravityOverride gravityOverride

    The GravityOverride to apply.

    See Also
    onGravityLockChanged

    OnGroundedChanged(bool)

    Called from GravityProvider when the grounded state changes.

    Declaration
    protected virtual void OnGroundedChanged(bool isGrounded)
    Parameters
    Type Name Description
    bool isGrounded

    Whether the player is on the ground.

    See Also
    onGroundedChanged

    OnLocomotionEnding()

    Called when locomotion enters the Ended state, after the provider invokes locomotionEnded and before it loses access to the XRBodyTransformer.

    Declaration
    protected override void OnLocomotionEnding()
    Overrides
    LocomotionProvider.OnLocomotionEnding()
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    OnLocomotionStarting()

    Called when locomotion enters the Moving state, after the provider gains access to the XRBodyTransformer and before it invokes locomotionStarted.

    Declaration
    protected override void OnLocomotionStarting()
    Overrides
    LocomotionProvider.OnLocomotionStarting()
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    OnLocomotionStateChanging(LocomotionState)

    Called when the locomotion state changes before it invokes locomotionStateChanged.

    Declaration
    protected override void OnLocomotionStateChanging(LocomotionState state)
    Parameters
    Type Name Description
    LocomotionState state

    The locomotion state this provider is changing to.

    Overrides
    LocomotionProvider.OnLocomotionStateChanging(LocomotionState)
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    RemoveGravityLock()

    Removes this provider from the GravityProvider list's of locked providers.

    Declaration
    public void RemoveGravityLock()
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    TryLockGravity(GravityOverride)

    Attempts to lock gravity.

    Declaration
    public bool TryLockGravity(GravityOverride gravityOverride)
    Parameters
    Type Name Description
    GravityOverride gravityOverride

    The GravityOverride to apply.

    Returns
    Type Description
    bool

    Whether the gravity was successfully locked.

    See Also
    LocomotionProvider
    ContinuousTurnProvider

    Update()

    See MonoBehaviour.

    Declaration
    protected void Update()
    See Also
    LocomotionProvider
    ContinuousTurnProvider

    Implements

    IGravityController

    See Also

    LocomotionProvider
    ContinuousTurnProvider
    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)