Navigation
API > API/Runtime > API/Runtime/NavigationSystem > API/Runtime/NavigationSystem/NavMesh
Inheritance Hierarchy
- TSharedFromThis
- FNavigationPath
- FNavMeshPath
- FMetaNavMeshPath
References
| Module | NavigationSystem |
| Header | /Engine/Source/Runtime/NavigationSystem/Public/NavMesh/NavMeshPath.h |
| Include | #include "NavMesh/NavMeshPath.h" |
Syntax
struct FNavMeshPath : public FNavigationPath
Variables
| Type | Name | Description | |
|---|---|---|---|
| uint32: 1 | bDynamic | Is this path generated on dynamic navmesh (i.e. one attached to moving surface) | |
| uint32: 1 | bStringPulled | Does this path contain string pulled path? If true then NumPathVerts > 0 and OutPathVerts contains valid data. | |
| uint32: 1 | bWantsPathCorridor | If set to true path instance will contain path corridor generated as a part pathfinding call (i.e. without the need to generate it with GeneratePathCorridorEdges | |
| uint32: 1 | bWantsStringPulling | If set to true path instance will contain a string pulled version. | |
| TArray< FNavLinkId > | CustomNavLinkIds | ||
| TArray< NavNodeRef > | PathCorridor | Sequence of navigation mesh poly ids representing an obstacle-free navigation corridor | |
| TArray< FVector::FReal > | PathCorridorCost | For every poly in PathCorridor stores traversal cost from previous navpoly |
Constructors
| Type | Name | Description | |
|---|---|---|---|
FNavMeshPath () |
|||
| PRAGMA_DISABLE_DEPRECATION_WARNINGS | FNavMeshPath
(
const FNavMeshPath& |
||
FNavMeshPath
(
FNavMeshPath&& Other |
Functions
| Type | Name | Description | |
|---|---|---|---|
| void | ApplyFlags
(
int32 NavDataFlags |
||
| bool | ContainsWithSameEnd
(
const FNavMeshPath* Other |
||
| const TArray< FNavigationPortalEdge > & | It's only const to be callable in const environment. | ||
| bool | GetNodeFlags
(
int32 NodeIdx, |
Get flags of path point or corridor poly (depends on bStringPulled flag) | |
| int32 | GetNodeRefIndex
(
const NavNodeRef NodeRef |
||
| const TArray< FNavigationPortalEdge > & | |||
| FVector::FReal | GetPathCorridorLength
(
const int32 StartingEdge |
Calculates estimated length of path expressed as sequence of navmesh edges. | |
| FVector::FReal | GetStringPulledLength
(
const int32 StartingPoint |
Calculates total length of string pulled path. | |
| FVector::FReal | |||
| void | Invert () |
||
| bool | IsPathSegmentANavLink
(
const int32 PathSegmentStartIndex |
||
| bool | |||
| void | OffsetFromCorners
(
FVector::FReal Distance |
||
| void | |||
| void | PerformStringPulling
(
const FVector& StartLoc, |
Find string pulled path from PathCorridor | |
| void | SetPathCorridorEdges
(
const TArray< FNavigationPortalEdge >& InPathCorridorEdges |
||
| void | SetWantsPathCorridor
(
const bool bNewWantsPathCorridor |
||
| void | SetWantsStringPulling
(
const bool bNewWantsStringPulling |
||
| bool | |||
| bool |
Overridden from FNavigationPath
| Type | Name | Description | |
|---|---|---|---|
| bool | Check if path contains any custom nav link | ||
| bool | ContainsCustomLink
(
FNavLinkId UniqueLinkId |
||
| bool | ContainsNode
(
NavNodeRef NodeRef |
Check if path (all polys in corridor) contains given node | |
| void | DebugDraw
(
const ANavigationData* NavData, |
||
| void | DescribeSelfToVisLog
(
FVisualLogEntry* Snapshot |
||
| bool | DoesIntersectBox
(
const FBox& Box, |
Checks if given path, starting from StartingIndex, intersects with given AABB box. | |
| bool | DoesIntersectBox
(
const FBox& Box, |
Checks if given path, starting from StartingIndex, intersects with given AABB box | |
| FVector::FReal | GetCostFromIndex
(
int32 PathPointIndex |
Get cost of path, starting from given point | |
| FVector::FReal | GetCostFromNode
(
NavNodeRef PathNode |
Get cost of path, starting from next poly in corridor | |
| FString | |||
| FVector | GetSegmentDirection
(
uint32 SegmentEndIndex |
Retrieves normalized direction vector to given path segment. | |
| void | Resets all variables describing generated path before attempting new pathfinding call. |
Operators
| Type | Name | Description | |
|---|---|---|---|
| FNavMeshPath & | operator=
(
const FNavMeshPath& Other |
||
| FNavMeshPath & | operator=
(
FNavMeshPath&& Other |
Typedefs
| Name | Description |
|---|---|
| Super |
Constants
| Name | Description |
|---|---|
| Type |
Deprecated Variables
| Type | Name | Description | |
|---|---|---|---|
| TArray< uint32 > | CustomLinkIds | LinkIds are now based on FNavLinkId. Use CustomNavLinkIds instead. CustomLinkIds array is no longer populated or used in the engine |