UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
MovementBaseUtility Namespace Reference

Functions

ENGINE_API bool IsDynamicBase (const UPrimitiveComponent *MovementBase)
 
ENGINE_API bool IsSimulatedBase (const UPrimitiveComponent *MovementBase)
 
bool UseRelativeLocation (const UPrimitiveComponent *MovementBase)
 
ENGINE_API void AddTickDependency (FTickFunction &BasedObjectTick, UPrimitiveComponent *NewBase)
 
ENGINE_API void RemoveTickDependency (FTickFunction &BasedObjectTick, UPrimitiveComponent *OldBase)
 
ENGINE_API FVector GetMovementBaseVelocity (const UPrimitiveComponent *MovementBase, const FName BoneName)
 
ENGINE_API FVector GetMovementBaseTangentialVelocity (const UPrimitiveComponent *MovementBase, const FName BoneName, const FVector &WorldLocation)
 
ENGINE_API bool GetMovementBaseTransform (const UPrimitiveComponent *MovementBase, const FName BoneName, FVector &OutLocation, FQuat &OutQuat)
 
ENGINE_API bool TransformLocationToWorld (const UPrimitiveComponent *MovementBase, const FName BoneName, const FVector &LocalLocation, FVector &OutLocationWorldSpace)
 
ENGINE_API bool TransformLocationToLocal (const UPrimitiveComponent *MovementBase, const FName BoneName, const FVector &WorldSpaceLocation, FVector &OutLocalLocation)
 
ENGINE_API bool TransformDirectionToWorld (const UPrimitiveComponent *MovementBase, const FName BoneName, const FVector &LocalDirection, FVector &OutDirectionWorldSpace)
 
ENGINE_API bool TransformDirectionToLocal (const UPrimitiveComponent *MovementBase, const FName BoneName, const FVector &WorldSpaceDirection, FVector &OutLocalDirection)
 

Detailed Description

MovementBaseUtility provides utilities for working with movement bases, for which we may need relative positioning info.

Function Documentation

◆ AddTickDependency()

void MovementBaseUtility::AddTickDependency ( FTickFunction BasedObjectTick,
UPrimitiveComponent *  NewBase 
)

Ensure that BasedObjectTick ticks after NewBase

◆ GetMovementBaseTangentialVelocity()

FVector MovementBaseUtility::GetMovementBaseTangentialVelocity ( const UPrimitiveComponent *  MovementBase,
const FName  BoneName,
const FVector WorldLocation 
)

Get the tangential velocity at WorldLocation for the given component.

◆ GetMovementBaseTransform()

bool MovementBaseUtility::GetMovementBaseTransform ( const UPrimitiveComponent *  MovementBase,
const FName  BoneName,
FVector OutLocation,
FQuat OutQuat 
)

Get the transform (local-to-world) for the given MovementBase, optionally at the location of a bone. Returns false if MovementBase is nullptr, or if BoneName is not a valid bone.

◆ GetMovementBaseVelocity()

FVector MovementBaseUtility::GetMovementBaseVelocity ( const UPrimitiveComponent *  MovementBase,
const FName  BoneName 
)

Get the velocity of the given component, first checking the ComponentVelocity and falling back to the physics velocity if necessary.

◆ IsDynamicBase()

bool MovementBaseUtility::IsDynamicBase ( const UPrimitiveComponent *  MovementBase)

Determine whether MovementBase can possibly move.

◆ IsSimulatedBase()

bool MovementBaseUtility::IsSimulatedBase ( const UPrimitiveComponent *  MovementBase)

Determine whether MovementBase is simulating or attached to a simulating object.

◆ RemoveTickDependency()

void MovementBaseUtility::RemoveTickDependency ( FTickFunction BasedObjectTick,
UPrimitiveComponent *  OldBase 
)

Remove tick dependency of BasedObjectTick on OldBase

◆ TransformDirectionToLocal()

bool MovementBaseUtility::TransformDirectionToLocal ( const UPrimitiveComponent *  MovementBase,
const FName  BoneName,
const FVector WorldSpaceDirection,
FVector OutLocalDirection 
)

Convert a world direction to a local direction for a given MovementBase, optionally relative to the orientation of a bone. Returns false if MovementBase is nullptr, or if BoneName is not a valid bone. Scaling is ignored.

◆ TransformDirectionToWorld()

bool MovementBaseUtility::TransformDirectionToWorld ( const UPrimitiveComponent *  MovementBase,
const FName  BoneName,
const FVector LocalDirection,
FVector OutDirectionWorldSpace 
)

Convert a local direction to a world direction for a given MovementBase. Returns false if MovementBase is nullptr, or if BoneName is not a valid bone. Scaling is ignored.

◆ TransformLocationToLocal()

bool MovementBaseUtility::TransformLocationToLocal ( const UPrimitiveComponent *  MovementBase,
const FName  BoneName,
const FVector WorldSpaceLocation,
FVector OutLocalLocation 
)

Convert a world location to a local location for a given MovementBase, optionally at the location of a bone. Returns false if MovementBase is nullptr, or if BoneName is not a valid bone. Scaling is ignored.

◆ TransformLocationToWorld()

bool MovementBaseUtility::TransformLocationToWorld ( const UPrimitiveComponent *  MovementBase,
const FName  BoneName,
const FVector LocalLocation,
FVector OutLocationWorldSpace 
)

Convert a local location to a world location for a given MovementBase. Returns false if MovementBase is nullptr, or if BoneName is not a valid bone. Scaling is ignored.

◆ UseRelativeLocation()

bool MovementBaseUtility::UseRelativeLocation ( const UPrimitiveComponent *  MovementBase)
inline

Determine if we should use relative positioning when based on a component (because it may move).