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

Classes

struct  FNavLinkOwnerData
 

Functions

void GatherCollision (UBodySetup *RigidBody, TNavStatArray< FVector > &OutVertexBuffer, TNavStatArray< int32 > &OutIndexBuffer, const FTransform &LocalToWorld, FBox &OutBounds)
 
void GatherCollision (UBodySetup *RigidBody, UNavCollision *NavCollision)
 
void GatherCollision (const FKAggregateGeom &AggGeom, UNavCollision &NavCollision)
 
void DefaultNavLinkProcessorImpl (FCompositeNavModifier *OUT CompositeModifier, const FNavLinkOwnerData &OwnerData, const TArray< FNavigationLink > &IN NavLinks)
 
void DefaultNavLinkSegmentProcessorImpl (FCompositeNavModifier *OUT CompositeModifier, const FNavLinkOwnerData &OwnerData, const TArray< FNavigationSegmentLink > &IN NavLinks)
 
void ProcessNavLinkAndAppend (FCompositeNavModifier *OUT CompositeModifier, const AActor *Actor, const TArray< FNavigationLink > &IN NavLinks)
 
void ProcessNavLinkAndAppend (FCompositeNavModifier *OUT CompositeModifier, const FNavLinkOwnerData &OwnerData, const TArray< FNavigationLink > &IN NavLinks)
 
void ProcessNavLinkSegmentAndAppend (FCompositeNavModifier *OUT CompositeModifier, const AActor *Actor, const TArray< FNavigationSegmentLink > &IN NavLinks)
 
void ProcessNavLinkSegmentAndAppend (FCompositeNavModifier *OUT CompositeModifier, const FNavLinkOwnerData &OwnerData, const TArray< FNavigationSegmentLink > &IN NavLinks)
 
void SetNavLinkProcessorDelegate (const FNavLinkProcessorDataDelegate &NewDelegate)
 
void SetNavLinkSegmentProcessorDelegate (const FNavLinkSegmentProcessorDataDelegate &NewDelegate)
 
bool IsBodyNavigationRelevant (const UBodySetup &BodySetup)
 
void GatherCollision (UBodySetup *RigidBody, TNavStatArray< FVector > &OutVertexBuffer, TNavStatArray< int32 > &OutIndexBuffer, const FTransform &ComponentToWorld=FTransform::Identity)
 
 DECLARE_DELEGATE_ThreeParams (FNavLinkProcessorDelegate, FCompositeNavModifier *, const AActor *, const TArray< FNavigationLink > &)
 
 DECLARE_DELEGATE_ThreeParams (FNavLinkSegmentProcessorDelegate, FCompositeNavModifier *, const AActor *, const TArray< FNavigationSegmentLink > &)
 
 DECLARE_DELEGATE_ThreeParams (FNavLinkProcessorDataDelegate, FCompositeNavModifier *, const FNavLinkOwnerData &, const TArray< FNavigationLink > &)
 
 DECLARE_DELEGATE_ThreeParams (FNavLinkSegmentProcessorDataDelegate, FCompositeNavModifier *, const FNavLinkOwnerData &, const TArray< FNavigationSegmentLink > &)
 
NAVIGATIONSYSTEM_API bool IsBodyNavigationRelevant (const UBodySetup &IN BodySetup)
 

Variables

FNavLinkProcessorDataDelegate NavLinkProcessor = FNavLinkProcessorDataDelegate::CreateStatic(DefaultNavLinkProcessorImpl)
 
FNavLinkSegmentProcessorDataDelegate NavLinkSegmentProcessor = FNavLinkSegmentProcessorDataDelegate::CreateStatic(DefaultNavLinkSegmentProcessorImpl)
 

Function Documentation

◆ DECLARE_DELEGATE_ThreeParams() [1/4]

NavigationHelper::DECLARE_DELEGATE_ThreeParams ( FNavLinkProcessorDataDelegate  ,
FCompositeNavModifier ,
const FNavLinkOwnerData ,
const TArray< FNavigationLink > &   
)

◆ DECLARE_DELEGATE_ThreeParams() [2/4]

NavigationHelper::DECLARE_DELEGATE_ThreeParams ( FNavLinkProcessorDelegate  ,
FCompositeNavModifier ,
const AActor ,
const TArray< FNavigationLink > &   
)

◆ DECLARE_DELEGATE_ThreeParams() [3/4]

NavigationHelper::DECLARE_DELEGATE_ThreeParams ( FNavLinkSegmentProcessorDataDelegate  ,
FCompositeNavModifier ,
const FNavLinkOwnerData ,
const TArray< FNavigationSegmentLink > &   
)

◆ DECLARE_DELEGATE_ThreeParams() [4/4]

NavigationHelper::DECLARE_DELEGATE_ThreeParams ( FNavLinkSegmentProcessorDelegate  ,
FCompositeNavModifier ,
const AActor ,
const TArray< FNavigationSegmentLink > &   
)

◆ DefaultNavLinkProcessorImpl()

NAVIGATIONSYSTEM_API void NavigationHelper::DefaultNavLinkProcessorImpl ( FCompositeNavModifier *OUT  CompositeModifier,
const FNavLinkOwnerData OwnerData,
const TArray< FNavigationLink > &IN  NavLinks 
)

◆ DefaultNavLinkSegmentProcessorImpl()

NAVIGATIONSYSTEM_API void NavigationHelper::DefaultNavLinkSegmentProcessorImpl ( FCompositeNavModifier *OUT  CompositeModifier,
const FNavLinkOwnerData OwnerData,
const TArray< FNavigationSegmentLink > &IN  NavLinks 
)

◆ GatherCollision() [1/4]

void NavigationHelper::GatherCollision ( const FKAggregateGeom AggGeom,
UNavCollision NavCollision 
)

gather collisions from aggregated geom, convex and tri mesh elements are not supported - use override with full UBodySetup param instead

◆ GatherCollision() [2/4]

void NavigationHelper::GatherCollision ( UBodySetup RigidBody,
TNavStatArray< FVector > &  OutVertexBuffer,
TNavStatArray< int32 > &  OutIndexBuffer,
const FTransform ComponentToWorld = FTransform::Identity 
)

◆ GatherCollision() [3/4]

void NavigationHelper::GatherCollision ( UBodySetup RigidBody,
TNavStatArray< FVector > &  OutVertexBuffer,
TNavStatArray< int32 > &  OutIndexBuffer,
const FTransform LocalToWorld,
FBox OutBounds 
)

◆ GatherCollision() [4/4]

void NavigationHelper::GatherCollision ( UBodySetup RigidBody,
UNavCollision NavCollision 
)

◆ IsBodyNavigationRelevant() [1/2]

bool NavigationHelper::IsBodyNavigationRelevant ( const UBodySetup BodySetup)

◆ IsBodyNavigationRelevant() [2/2]

NAVIGATIONSYSTEM_API bool NavigationHelper::IsBodyNavigationRelevant ( const UBodySetup &IN  BodySetup)

◆ ProcessNavLinkAndAppend() [1/2]

NAVIGATIONSYSTEM_API void NavigationHelper::ProcessNavLinkAndAppend ( FCompositeNavModifier *OUT  CompositeModifier,
const AActor Actor,
const TArray< FNavigationLink > &IN  NavLinks 
)

called to do any necessary processing on NavLinks and put results in CompositeModifier

◆ ProcessNavLinkAndAppend() [2/2]

NAVIGATIONSYSTEM_API void NavigationHelper::ProcessNavLinkAndAppend ( FCompositeNavModifier *OUT  CompositeModifier,
const FNavLinkOwnerData OwnerData,
const TArray< FNavigationLink > &IN  NavLinks 
)

◆ ProcessNavLinkSegmentAndAppend() [1/2]

NAVIGATIONSYSTEM_API void NavigationHelper::ProcessNavLinkSegmentAndAppend ( FCompositeNavModifier *OUT  CompositeModifier,
const AActor Actor,
const TArray< FNavigationSegmentLink > &IN  NavLinks 
)

called to do any necessary processing on NavLinks and put results in CompositeModifier

◆ ProcessNavLinkSegmentAndAppend() [2/2]

NAVIGATIONSYSTEM_API void NavigationHelper::ProcessNavLinkSegmentAndAppend ( FCompositeNavModifier *OUT  CompositeModifier,
const FNavLinkOwnerData OwnerData,
const TArray< FNavigationSegmentLink > &IN  NavLinks 
)

◆ SetNavLinkProcessorDelegate()

NAVIGATIONSYSTEM_API void NavigationHelper::SetNavLinkProcessorDelegate ( const FNavLinkProcessorDataDelegate NewDelegate)

Set new implementation of nav link processor, a function that will be be used to process/transform links before adding them to CompositeModifier. This function is supposed to be called once during the engine/game setup phase. Not intended to be toggled at runtime

◆ SetNavLinkSegmentProcessorDelegate()

NAVIGATIONSYSTEM_API void NavigationHelper::SetNavLinkSegmentProcessorDelegate ( const FNavLinkSegmentProcessorDataDelegate NewDelegate)

Variable Documentation

◆ NavLinkProcessor

FNavLinkProcessorDataDelegate NavigationHelper::NavLinkProcessor = FNavLinkProcessorDataDelegate::CreateStatic(DefaultNavLinkProcessorImpl)

◆ NavLinkSegmentProcessor

FNavLinkSegmentProcessorDataDelegate NavigationHelper::NavLinkSegmentProcessor = FNavLinkSegmentProcessorDataDelegate::CreateStatic(DefaultNavLinkSegmentProcessorImpl)