UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
INavMovementInterface Class Referenceabstract

#include <NavMovementInterface.h>

+ Inheritance diagram for INavMovementInterface:

Public Member Functions

virtual bool CanStartPathFollowing () const =0
 
virtual bool CanStopPathFollowing () const =0
 
virtual FNavMovementPropertiesGetNavMovementProperties ()=0
 
virtual const FNavMovementPropertiesGetNavMovementProperties () const =0
 
virtual FNavAgentPropertiesGetNavAgentPropertiesRef ()=0
 
virtual const FNavAgentPropertiesGetNavAgentPropertiesRef () const =0
 
virtual void SetPathFollowingAgent (IPathFollowingAgentInterface *InPathFollowingAgent)=0
 
virtual IPathFollowingAgentInterfaceGetPathFollowingAgent ()=0
 
virtual const IPathFollowingAgentInterfaceGetPathFollowingAgent () const =0
 
virtual void RequestDirectMove (const FVector &MoveVelocity, bool bForceMaxSpeed)=0
 
virtual void RequestPathMove (const FVector &MoveInput)=0
 
virtual void StopMovementImmediately ()=0
 
virtual void ResetMoveState ()=0
 
virtual FVector GetLocation () const =0
 
virtual FVector GetFeetLocation () const =0
 
virtual FBasedPosition GetFeetLocationBased () const =0
 
virtual UObjectGetOwnerAsObject () const =0
 
virtual TObjectPtr< UObjectGetUpdatedObject () const =0
 
virtual void GetSimpleCollisionCylinder (float &CollisionRadius, float &CollisionHalfHeight) const =0
 
virtual FVector GetSimpleCollisionCylinderExtent () const =0
 
virtual FVector GetForwardVector () const =0
 
virtual void UpdateNavAgent (const UObject &ObjectToUpdateFrom)=0
 
virtual FVector GetVelocityForNavMovement () const =0
 
virtual float GetMaxSpeedForNavMovement () const =0
 
virtual bool IsCrouching () const =0
 
virtual bool IsFalling () const =0
 
virtual bool IsMovingOnGround () const =0
 
virtual bool IsSwimming () const =0
 
virtual bool IsFlying () const =0
 
virtual UE_API void StopActiveMovement ()
 
virtual UE_API void StopMovementKeepPathing ()
 
UE_API FVector GetNavLocation () const
 
virtual UE_API float GetPathFollowingBrakingDistance (float MaxSpeed) const
 
UE_API void SetFixedBrakingDistance (float DistanceToEndOfPath)
 
UE_API bool UseAccelerationForPathFollowing () const
 
virtual bool CanEverCrouch () const
 
virtual bool CanEverJump () const
 
virtual bool CanEverMoveOnGround () const
 
virtual bool CanEverSwim () const
 
virtual bool CanEverFly () const
 

Member Function Documentation

◆ CanEverCrouch()

virtual bool INavMovementInterface::CanEverCrouch ( ) const
inlinevirtual

Returns true if agent can crouch

◆ CanEverFly()

virtual bool INavMovementInterface::CanEverFly ( ) const
inlinevirtual

Returns true if agent can fly

◆ CanEverJump()

virtual bool INavMovementInterface::CanEverJump ( ) const
inlinevirtual

Returns true if agent can jump

◆ CanEverMoveOnGround()

virtual bool INavMovementInterface::CanEverMoveOnGround ( ) const
inlinevirtual

Returns true if agent can move along the ground (walk, drive, etc)

◆ CanEverSwim()

virtual bool INavMovementInterface::CanEverSwim ( ) const
inlinevirtual

Returns true if agent can swim

◆ CanStartPathFollowing()

virtual bool INavMovementInterface::CanStartPathFollowing ( ) const
pure virtual

Returns true if path following can start

Implemented in UCharacterMovementComponent, and UNavMovementComponent.

◆ CanStopPathFollowing()

virtual bool INavMovementInterface::CanStopPathFollowing ( ) const
pure virtual

check if current move target can be reached right now if positions are matching (e.g. performing scripted move and can't stop)

Implemented in UCharacterMovementComponent, and UNavMovementComponent.

◆ GetFeetLocation()

virtual FVector INavMovementInterface::GetFeetLocation ( ) const
pure virtual

Returns location of controlled agent's "feet" meaning center of bottom of collision shape

Implemented in UNavMovementComponent.

◆ GetFeetLocationBased()

virtual FBasedPosition INavMovementInterface::GetFeetLocationBased ( ) const
pure virtual

Returns based location of controlled agent

Implemented in UNavMovementComponent.

◆ GetForwardVector()

virtual FVector INavMovementInterface::GetForwardVector ( ) const
pure virtual

Get forward vector of the object being driven by nav movement

Implemented in UNavMovementComponent.

◆ GetLocation()

virtual FVector INavMovementInterface::GetLocation ( ) const
pure virtual

Returns location of controlled agent - meaning center of collision shape

Implemented in UNavMovementComponent.

◆ GetMaxSpeedForNavMovement()

virtual float INavMovementInterface::GetMaxSpeedForNavMovement ( ) const
pure virtual

Get maximum movement speed of the agent

Implemented in UNavMovementComponent.

◆ GetNavAgentPropertiesRef() [1/2]

virtual const FNavAgentProperties & INavMovementInterface::GetNavAgentPropertiesRef ( ) const
pure virtual

Returns the NavAgentProperties(const) used by NavMovementInterface and PathFollowing

Implemented in UNavMovementComponent.

◆ GetNavAgentPropertiesRef() [2/2]

virtual FNavAgentProperties & INavMovementInterface::GetNavAgentPropertiesRef ( )
pure virtual

Returns the NavAgentProperties used by NavMovementInterface and PathFollowing

Implemented in UNavMovementComponent.

◆ GetNavLocation()

FVector INavMovementInterface::GetNavLocation ( ) const

Returns navigation location of controlled agent

◆ GetNavMovementProperties() [1/2]

virtual const FNavMovementProperties & INavMovementInterface::GetNavMovementProperties ( ) const
pure virtual

Returns the Nav movement properties struct (const) used by NavMovementInterface and PathFollowing

Implemented in UNavMovementComponent.

◆ GetNavMovementProperties() [2/2]

virtual FNavMovementProperties * INavMovementInterface::GetNavMovementProperties ( )
pure virtual

Returns the Nav movement properties struct used by NavMovementInterface and PathFollowing

Implemented in UNavMovementComponent.

◆ GetOwnerAsObject()

virtual UObject * INavMovementInterface::GetOwnerAsObject ( ) const
pure virtual

Get the owner of the object consuming nav movement

Implemented in UNavMovementComponent.

◆ GetPathFollowingAgent() [1/2]

virtual const IPathFollowingAgentInterface * INavMovementInterface::GetPathFollowingAgent ( ) const
pure virtual

Get path following agent this interface uses(const)

Implemented in UNavMovementComponent.

◆ GetPathFollowingAgent() [2/2]

virtual IPathFollowingAgentInterface * INavMovementInterface::GetPathFollowingAgent ( )
pure virtual

Get path following agent this interface uses

Implemented in UNavMovementComponent.

◆ GetPathFollowingBrakingDistance()

float INavMovementInterface::GetPathFollowingBrakingDistance ( float  MaxSpeed) const
virtual

Returns braking distance for acceleration driven path following

Reimplemented in UCharacterMovementComponent.

◆ GetSimpleCollisionCylinder()

virtual void INavMovementInterface::GetSimpleCollisionCylinder ( float CollisionRadius,
float CollisionHalfHeight 
) const
pure virtual

Get axis-aligned cylinder around this agent, used for simple collision checks in nav movement

Implemented in UNavMovementComponent.

◆ GetSimpleCollisionCylinderExtent()

virtual FVector INavMovementInterface::GetSimpleCollisionCylinderExtent ( ) const
pure virtual

Returns collision extents vector for this object

Implemented in UNavMovementComponent.

◆ GetUpdatedObject()

virtual TObjectPtr< UObject > INavMovementInterface::GetUpdatedObject ( ) const
pure virtual

Get the Object this movement interface is updating

Implemented in UNavMovementComponent.

◆ GetVelocityForNavMovement()

virtual FVector INavMovementInterface::GetVelocityForNavMovement ( ) const
pure virtual

Get the current velocity of the agent for nav movement

Implemented in UNavMovementComponent.

◆ IsCrouching()

virtual bool INavMovementInterface::IsCrouching ( ) const
pure virtual

Returns true if currently crouching

Implemented in UCharacterMovementComponent, and UNavMovementComponent.

◆ IsFalling()

virtual bool INavMovementInterface::IsFalling ( ) const
pure virtual

Returns true if currently falling (not flying, in a non-fluid volume, and not on the ground)

Implemented in UCharacterMovementComponent, and UNavMovementComponent.

◆ IsFlying()

virtual bool INavMovementInterface::IsFlying ( ) const
pure virtual

Returns true if currently flying (moving through a non-fluid volume without resting on the ground)

Implemented in UCharacterMovementComponent, and UNavMovementComponent.

◆ IsMovingOnGround()

virtual bool INavMovementInterface::IsMovingOnGround ( ) const
pure virtual

Returns true if currently moving on the ground (e.g. walking or driving)

Implemented in UCharacterMovementComponent, and UNavMovementComponent.

◆ IsSwimming()

virtual bool INavMovementInterface::IsSwimming ( ) const
pure virtual

Returns true if currently swimming (moving through a fluid volume)

Implemented in UCharacterMovementComponent, and UNavMovementComponent.

◆ RequestDirectMove()

virtual void INavMovementInterface::RequestDirectMove ( const FVector MoveVelocity,
bool  bForceMaxSpeed 
)
pure virtual

path following: request movement through a velocity directly

Implemented in UCharacterMovementComponent, and UNavMovementComponent.

◆ RequestPathMove()

virtual void INavMovementInterface::RequestPathMove ( const FVector MoveInput)
pure virtual

path following: request movement through a new move input (normal vector = full strength)

Implemented in UCharacterMovementComponent, UNavMovementComponent, and UPawnMovementComponent.

◆ ResetMoveState()

virtual void INavMovementInterface::ResetMoveState ( )
pure virtual

Resets runtime movement state to default movement capabilities

Implemented in UNavMovementComponent.

◆ SetFixedBrakingDistance()

void INavMovementInterface::SetFixedBrakingDistance ( float  DistanceToEndOfPath)

Set fixed braking distance

◆ SetPathFollowingAgent()

virtual void INavMovementInterface::SetPathFollowingAgent ( IPathFollowingAgentInterface InPathFollowingAgent)
pure virtual

Set the path following agent this interface uses. Must implement IPathFollowingAgentInterface.

Implemented in UNavMovementComponent.

◆ StopActiveMovement()

void INavMovementInterface::StopActiveMovement ( )
virtual

Stops applying further movement (usually zeros acceleration).

Reimplemented in UCharacterMovementComponent.

◆ StopMovementImmediately()

virtual void INavMovementInterface::StopMovementImmediately ( )
pure virtual

Stops movement by setting velocity to zero - Note: depending on the movement system this may take effect next tick

Implemented in UNavMovementComponent.

◆ StopMovementKeepPathing()

void INavMovementInterface::StopMovementKeepPathing ( )
virtual

Stops movement immediately (reset velocity) but keeps following current path

◆ UpdateNavAgent()

virtual void INavMovementInterface::UpdateNavAgent ( const UObject ObjectToUpdateFrom)
pure virtual

Set nav agent properties from an object

Implemented in UNavMovementComponent.

◆ UseAccelerationForPathFollowing()

bool INavMovementInterface::UseAccelerationForPathFollowing ( ) const

Returns true if acceleration should be used for path following


The documentation for this class was generated from the following files: