docs.unity3d.com
Search Results for

    Show / Hide Table of Contents

    Namespace UnityEngine.XR.Interaction.Toolkit.Locomotion

    Classes

    ApplyBodyTransformationsEventArgs

    Event data associated with the event when an XR Body Transformer applies transformation(s).

    CharacterControllerBodyManipulator

    Scriptable object that can perform constrained movement of an XRMovableBody by using a CharacterController that follows the user's body. Each time this object is about to call Move(Vector3) on the characterController, it first ensures that the center and height are set such that the bottom of the capsule matches the position determined by GetBodyGroundLocalPosition() and the height of the capsule matches Unity.XR.CoreUtils.XROrigin.CameraInOriginSpaceHeight.

    DelegateXRBodyTransformation

    Body transformation that invokes a delegate when applied.

    LocomotionMediator

    Behavior that mediates user locomotion by providing LocomotionProvider components with access to the XRBodyTransformer linked to this behavior. This behavior manages the LocomotionState for each provider based on its requests for the Body Transformer.

    LocomotionProvider

    Base for a behavior that implements a specific type of user locomotion. This behavior communicates with a LocomotionMediator to gain access to the mediator's XRBodyTransformer, which the provider can use to queue IXRBodyTransformations that move the user.

    LocomotionStateExtensions

    Extension methods for LocomotionState.

    ScriptableConstrainedBodyManipulator

    Base for a scriptable object that can perform movement of an XRMovableBody that is constrained by collision based on where the user's body is.

    UnderCameraBodyPositionEvaluator

    Scriptable object that estimates the user's body position by projecting the position of the camera onto the XZ plane of the Unity.XR.CoreUtils.XROrigin.

    XRBodyGroundPosition

    Transformation that moves the target's originTransform such that the world position of where the user's body is grounded matches the specified position. The body ground position is determined by the target's bodyPositionEvaluator.

    XRBodyPositionEvaluatorExtensions

    Extension methods for IXRBodyPositionEvaluator.

    XRBodyScale

    Transformation that sets the uniform local scale of the target's originTransform to the specified value, and then repositions the Origin such that the world position of where the user's body is grounded remains the same. The body ground position is determined by the target's bodyPositionEvaluator.

    XRBodyTransformer

    Behavior that manages user locomotion via transformation of an Unity.XR.CoreUtils.XROrigin.Origin. This behavior applies queued IXRBodyTransformations every Update().

    XRBodyYawRotation

    Transformation that rotates the target's originTransform by the specified amount about the axis aligned with the Origin's up vector and passing through the world position of where the user's body is grounded. The body ground position is determined by the target's bodyPositionEvaluator.

    XRCameraForwardXZAlignment

    Transformation that rotates the target's originTransform about the axis aligned with the Origin's up vector and passing through the world position of the Unity.XR.CoreUtils.XROrigin.Camera, such that the projection of the camera's forward vector onto the Origin's XZ plane matches the projection of the specified vector onto the Origin's XZ plane.

    XRMovableBody

    Container for an Unity.XR.CoreUtils.XROrigin that can be transformed using the user's body as a frame of reference.

    XROriginMovement

    Transformation that translates the target's originTransform by the specified amount.

    XROriginUpAlignment

    Transformation that rotates the target's originTransform such that its up vector matches the specified vector. Note that this does not maintain the world position of the user's body.

    Interfaces

    IConstrainedXRBodyManipulator

    Interface for an object that can perform movement of an XRMovableBody that is constrained by collision based on where the user's body is.

    IXRBodyPositionEvaluator

    Interface for an object that determines the position of the user's body for a given Unity.XR.CoreUtils.XROrigin. This is used by implementations of IXRBodyTransformation to transform the XR Origin using the user's body, rather than the tracking origin itself, as the frame of reference.

    IXRBodyTransformation

    Interface for a transformation that can be applied to an Unity.XR.CoreUtils.XROrigin.Origin, using the user's body as a frame of reference.

    Enums

    LocomotionState

    The state of locomotion for any given 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)