Navigation
API > API/Runtime > API/Runtime/NavigationSystem
Encapsulates NavLinkCustomInterface interface, can be used with Actors not relevant for navigation
Additional functionality:
- can be toggled
- can create obstacle area for easier/forced separation of link end points
- can broadcast state changes to nearby agents
| Name | UNavLinkCustomComponent |
| Type | class |
| Header File | /Engine/Source/Runtime/NavigationSystem/Public/NavLinkCustomComponent.h |
| Include Path | #include "NavLinkCustomComponent.h" |
Syntax
UCLASS (MinimalAPI)
class UNavLinkCustomComponent :
public UNavRelevantComponent ,
public INavLinkCustomInterface
Inheritance Hierarchy
- UObjectBase → UObjectBaseUtility → UObject → UActorComponent → UNavRelevantComponent → UNavLinkCustomComponent
Implements Interfaces
Constructors
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
UNavLinkCustomComponent
(
const FObjectInitializer& ObjectInitializer |
NavLinkCustomComponent.h |
Typedefs
| Name | Type | Remarks | Include Path |
|---|---|---|---|
| FBroadcastFilter | TBaseDelegate_TwoParams< void, UNavLinkCustomComponent *, TArray< UObject * > & > | NavLinkCustomComponent.h | |
| FOnMoveReachedLink | TBaseDelegate_ThreeParams< void, UNavLinkCustomComponent *, UObject *, const FVector & > | NavLinkCustomComponent.h |
Functions
Public
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void AddNavigationObstacle
(
TSubclassOf< UNavArea > AreaClass, |
Add box obstacle during generation of navigation data this can be used to create empty area under doors | NavLinkCustomComponent.h | |
void ApplyComponentInstanceData
(
FNavLinkCustomInstanceData* ComponentInstanceData |
NavLinkCustomComponent.h | ||
void ClearNavigationObstacle() |
Removes simple obstacle | NavLinkCustomComponent.h | |
TSubclassOf< UNavArea > GetDisabledArea() |
NavLinkCustomComponent.h | ||
TSubclassOf< UNavArea > GetEnabledArea() |
NavLinkCustomComponent.h | ||
FVector GetEndPoint() |
Get link end point in world space | NavLinkCustomComponent.h | |
virtual FNavigationLink GetLinkModifier() |
NavLinkCustomComponent.h | ||
virtual void GetNavigationData
(
FNavigationRelevantData& Data |
NavLinkCustomComponent.h | ||
TSubclassOf< UNavArea > GetObstacleAreaClass() |
NavLinkCustomComponent.h | ||
FVector GetStartPoint() |
Get link start point in world space | NavLinkCustomComponent.h | |
| NavLinkCustomComponent.h | |||
bool HasMovingAgents() |
Check is any agent is currently moving though this link | NavLinkCustomComponent.h | |
bool IsEnabled() |
NavLinkCustomComponent.h | ||
void SendBroadcastWhenDisabled
(
bool bEnabled |
NavLinkCustomComponent.h | ||
void SendBroadcastWhenEnabled
(
bool bEnabled |
NavLinkCustomComponent.h | ||
void SetBroadcastData
(
float Radius, |
Set properties of trigger around link entry point(s), that will notify nearby agents about link state change | NavLinkCustomComponent.h | |
void SetBroadcastFilter
(
UserClass* TargetOb, |
NavLinkCustomComponent.h | ||
void SetBroadcastFilter
(
UserClass* TargetOb, |
NavLinkCustomComponent.h | ||
void SetBroadcastFilter
(
FBroadcastFilter const& InDelegate |
Set delegate to filter | NavLinkCustomComponent.h | |
void SetDisabledArea
(
TSubclassOf< UNavArea > AreaClass |
Set area class to use when link is disabled | NavLinkCustomComponent.h | |
void SetEnabled
(
bool bNewEnabled |
Change state of smart link (used area class) | NavLinkCustomComponent.h | |
void SetEnabledArea
(
TSubclassOf< UNavArea > AreaClass |
Set area class to use when link is enabled | NavLinkCustomComponent.h | |
void SetLinkData
(
const FVector& RelativeStart, |
Set basic link data: end points and direction | NavLinkCustomComponent.h | |
void SetMoveReachedLink
(
FOnMoveReachedLink const& InDelegate |
Set delegate to notify about reaching this link during path following | NavLinkCustomComponent.h | |
void SetMoveReachedLink
(
UserClass* TargetOb, |
NavLinkCustomComponent.h | ||
void SetMoveReachedLink
(
UserClass* TargetOb, |
NavLinkCustomComponent.h | ||
void SetSupportedAgents
(
const FNavAgentSelector& InSupportedAgents |
NavLinkCustomComponent.h |
Overridden from UNavRelevantComponent
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void CalcAndCacheBounds() |
NavLinkCustomComponent.h |
Overridden from UActorComponent
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual TStructOnScope< FActorComponentInstanceData > GetComponentInstanceData() |
NavLinkCustomComponent.h | ||
virtual void OnRegister() |
NavLinkCustomComponent.h | ||
virtual void OnUnregister() |
NavLinkCustomComponent.h |
Overridden from UObject
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual void PostEditImport() |
NavLinkCustomComponent.h | ||
virtual void PostLoad() |
NavLinkCustomComponent.h | ||
virtual void Serialize
(
FArchive& Ar |
NavLinkCustomComponent.h |
Overridden from INavLinkCustomInterface
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
virtual FNavLinkAuxiliaryId GetAuxiliaryId() |
NavLinkCustomComponent.h | ||
virtual FNavLinkId GetId() |
Get unique ID number for custom link Owner should get its unique ID by calling INavLinkCustomInterface::GetUniqueId() and store it | NavLinkCustomComponent.h | |
virtual TSubclassOf< UNavArea > GetLinkAreaClass() |
Get basic link data: area class (null = default walkable) | NavLinkCustomComponent.h | |
virtual void GetLinkData
(
FVector& LeftPt, |
Get basic link data: two points (relative to owner) and direction | NavLinkCustomComponent.h | |
virtual void GetSupportedAgents
(
FNavAgentSelector& OutSupportedAgents |
Get agents supported by this link | NavLinkCustomComponent.h | |
virtual bool IsLinkPathfindingAllowed
(
const UObject* Querier |
Check if link allows path finding Querier is usually an AIController trying to find path | NavLinkCustomComponent.h | |
virtual void OnLinkMoveFinished
(
UObject* PathComp |
Notify called when agent finishes using this link for movement | NavLinkCustomComponent.h | |
virtual bool OnLinkMoveStarted
(
UObject* PathComp, |
Notify called when agent starts using this link for movement. | NavLinkCustomComponent.h | |
virtual void UpdateLinkId
(
FNavLinkId NewUniqueId |
Update unique ID number for custom link by navigation system. | NavLinkCustomComponent.h |
Protected
| Name | Remarks | Include Path | Unreal Specifiers |
|---|---|---|---|
void BroadcastStateChange() |
Notify nearby agents about link changing state | NavLinkCustomComponent.h | |
| Gather agents to notify about state change | NavLinkCustomComponent.h | ||
| NavLinkCustomComponent.h | |||
| NavLinkCustomComponent.h |