Namespace UnityEngine.XR.Interaction.Toolkit.Locomotion
Classes
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 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.