Navigation
API > API/Runtime > API/Runtime/Navmesh
Classes
Type | Name | Description | |
---|---|---|---|
![]() |
dtBVNode | Bounding volume node. This structure is rarely if ever used by the end user. | |
![]() |
dtChunkArray | A simple dynamic array of integers. | |
![]() |
dtDynamicAreaCreateParams | ||
![]() |
dtIntArray | A simple dynamic array of integers. | |
![]() |
dtLink | Defines a link between polygons. This structure is rarely if ever used by the end user. | |
![]() |
dtLinkBuilderConfig | ||
![]() |
dtLinkBuilderData | ||
![]() |
dtMeshHeader | Provides high level information related to a dtMeshTile object. | |
![]() |
dtMeshTile | Defines a navigation mesh tile. | |
![]() |
dtNavLinkBuilder | ||
![]() |
dtNavLinkBuilderJumpDownConfig | Configuration for generated jump down links. | |
![]() |
dtNavLinkBuilderJumpOverConfig | Configuration for generated jump over links. | |
![]() |
dtNavMesh | A navigation mesh based on tiles of convex polygons. | |
![]() |
dtNavMeshCreateParams | Represents the source data used to build an navigation mesh tile. | |
![]() |
dtNavMeshParams | Configuration parameters used to define multi-tile navigation meshes. | |
![]() |
dtNavMeshQuery | Provides the ability to perform pathfinding related queries against a navigation mesh. | |
![]() |
dtNavMeshResParams | Configuration parameters depending on navmesh resolution. | |
![]() |
dtNode | ||
![]() |
dtNodePool | ||
![]() |
dtNodeQueue | ||
![]() |
dtOffMeshConnection | This is an unsupported feature and has not been finished to production quality. | |
![]() |
dtOffMeshLinkCreateParams | Copyright Epic Games, Inc. | |
![]() |
dtPoly | Defines a polyogn within a dtMeshTile object. | |
![]() |
dtPolyDetail | Defines the location of detail sub-mesh data within a dtMeshTile. | |
![]() |
dtQueryFilter | Defines polygon filtering and traversal costs for navigation mesh query operations. | |
![]() |
dtQueryFilterData | [UE: moved all filter variables to struct, DO NOT mess with virtual functions here!] | |
![]() |
dtQueryResult | ||
![]() |
dtQueryResultPack | ||
![]() |
dtQuerySpecialLinkFilter | By default dtQueryFilter will use virtual calls. | |
![]() |
dtScopedDelete | A simple helper class used to delete an array when it goes out of scope. | |
![]() |
ReadTilesHelper | @UE BEGIN: helper for reading tiles |
Constants
Name | Description |
---|---|
DT_BUFFER_TOO_SMALL | |
DT_CONNECTION_INTERNAL | Flags use to annotate dtLink::side with addotional data |
DT_EXT_LINK | A flag that indicates that an entity links to an external entity. |
DT_FAILURE | High level status. |
DT_IN_PROGRESS | |
DT_INVALID_CYCLE_PATH | |
DT_INVALID_PARAM | |
DT_LINK_FLAG_OFFMESH_CON | |
DT_LINK_FLAG_OFFMESH_CON_BACKTRACKER | |
DT_LINK_FLAG_OFFMESH_CON_BIDIR | |
DT_LINK_FLAG_OFFMESH_CON_ENABLED | |
DT_LINK_FLAG_SIDE_MASK | |
DT_MIN_SALT_BITS | Navmesh tiles' salt will have at least this much bits. |
DT_NAVMESH_STATE_MAGIC | A magic number used to detect the compatibility of navigation tile states. |
DT_NAVMESH_STATE_VERSION | A version number used to detect compatibility of navigation tile states. |
DT_NAVMESH_VERSION | A version number used to detect compatibility of navigation tile data. |
DT_NULL_IDX | |
DT_OFFMESH_CON_BIDIR | A flag that indicates that an off-mesh connection can be traversed in both directions. (Is bidirectional.) |
DT_OFFMESH_CON_CHEAPAREA | |
DT_OFFMESH_CON_GENERATED | |
DT_OFFMESH_CON_POINT | |
DT_OFFMESH_CON_SEGMENT | |
DT_OUT_OF_MEMORY | |
DT_OUT_OF_NODES | |
DT_PARTIAL_RESULT | |
DT_RESOLUTION_COUNT | |
DT_SALT_BASE | |
DT_STATUS_DETAIL_MASK | Detail information for status. |
DT_SUCCESS | |
DT_WRONG_VERSION | Static const unsigned int DT_WRONG_MAGIC = 1 << 0; // Input data is not recognized. NOTE: UE magic removed to save memory |
Typedefs
Name | Description |
---|---|
dtAllocFunc | A memory allocation function. |
dtClusterRef | A handle to a cluster within a navigation mesh tile. |
dtFreeFunc | A memory deallocation function. |
dtNodeIndex | |
dtReal | |
dtStatsPostAddTileFunc | |
dtStatsPreRemoveTileFunc | |
dtStatus | Copyright Epic Games, Inc. |
UEType_uint64 |
Enums
Type | Name | Description | |
---|---|---|---|
![]() |
dtAllocHint | Provides hint values on how the memory is expected to be used. Typically used by external memory allocation and tracking systems. | |
![]() |
dtNavLinkAction | Copyright Epic Games, Inc. All Rights Reserved. | |
![]() |
dtNavLinkBuilderFlags | ||
![]() |
dtNodeFlags | Copyright Epic Games, Inc. | |
![]() |
dtPolyTypes | Flags representing the type of a navigation mesh polygon. | |
![]() |
dtRotation | @UE BEGIN | |
![]() |
dtStraightPathFlags | Vertex flags returned by dtNavMeshQuery::findStraightPath. | |
![]() |
dtStraightPathOptions | Options for dtNavMeshQuery::findStraightPath. | |
![]() |
dtTileFlags | Tile flags used for various functions and fields. |
Functions
Type | Name | Description | |
---|---|---|---|
![]() |
T | dtAbs
(
T a |
Returns the absolute value. |
![]() |
int | dtAlign
(
int x |
|
![]() |
void * | dtAlloc
(
int size, |
Allocates a memory block. |
![]() |
void | dtAllocSetCustom
(
dtAllocFunc* allocFunc, |
Sets the base custom allocation functions to be used by Detour. |
![]() |
double | dtAtan2
(
double x, |
|
![]() |
float | dtAtan2
(
float x, |
|
![]() |
void | dtCalcPolyCenter
(
dtReal* tc, |
Derives the centroid of a convex polygon. |
![]() |
double | dtCeil
(
double x |
|
![]() |
float | dtCeil
(
float x |
|
![]() |
dtReal | ||
![]() |
T | dtClamp
(
T v, |
Clamps the value to the specified range. |
![]() |
bool | Derives the y-axis height of the closest point on the triangle from the specified reference point. | |
![]() |
void | Derives the closest point on a triangle from the specified reference point. | |
![]() |
void | Compute XY offset caused by the given rotation | |
![]() |
double | dtCos
(
double x |
|
![]() |
float | dtCos
(
float x |
|
![]() |
bool | dtDistancePtPolyEdgesSqr
(
const dtReal* pt, |
|
![]() |
dtReal | dtDistancePtSegSqr
(
const dtReal* pt, |
|
![]() |
dtReal | dtDistancePtSegSqr2D
(
const dtReal* pt, |
|
![]() |
double | dtFloor
(
double x |
|
![]() |
float | dtFloor
(
float x |
|
![]() |
double | dtfMod
(
double x, |
|
![]() |
float | dtfMod
(
float x, |
|
![]() |
void | dtFree
(
void* ptr, |
Deallocates a memory block. |
![]() |
unsigned int | dtIlog2
(
unsigned int v |
|
![]() |
bool | ||
![]() |
bool | ||
![]() |
float | dtLerp
(
float a, |
|
![]() |
dtReal | ||
![]() |
T | dtMax
(
T a, |
Returns the maximum of two values. |
![]() |
void | dtMemCpy
(
void* dst, |
|
![]() |
T | dtMin
(
T a, |
Returns the minimum of two values. |
![]() |
dtReal | ||
![]() |
bool | dtNavMeshDataSwapEndian
(
unsigned char* data, |
Swaps endianess of the tile data. |
![]() |
bool | dtNavMeshHeaderSwapEndian
(
unsigned char* data, |
Swaps the endianess of the tile data's header (dtMeshHeader). |
![]() |
unsigned int | dtNextPow2
(
unsigned int v |
|
![]() |
int | dtOppositeTile
(
int side |
|
![]() |
bool | dtOverlapBounds
(
const dtReal* amin, |
Determines if two axis-aligned bounding boxes overlap. |
![]() |
bool | dtOverlapPolyPoly2D
(
const dtReal* polya, |
Determines if the two convex polygons overlap on the xz-plane. |
![]() |
bool | dtOverlapQuantBounds
(
const unsigned short amin, |
Determines if two axis-aligned bounding boxes overlap. |
![]() |
bool | dtPointInPolygon
(
const dtReal* pt, |
Determines if the specified point is inside the convex polygon on the xz-plane. |
![]() |
void | ||
![]() |
void | dtRotate90
(
unsigned short* dest, |
Rotate vector around center position by increments of 90 degrees. |
![]() |
void | dtRotate90
(
dtReal* dest, |
Rotate vector around center position by increments of 90 degrees. |
![]() |
dtRotation | dtSelectRotation
(
dtReal rotationDeg |
Select a 90 degree increment value from an input angle in degree. |
![]() |
double | dtSin
(
double x |
|
![]() |
float | dtSin
(
float x |
|
![]() |
T | dtSqr
(
T a |
Returns the square of the value. |
![]() |
double | dtSqrt
(
double x |
|
![]() |
float | dtSqrt
(
float x |
|
![]() |
void | dtStatsSetCustom
(
dtStatsPostAddTileFunc* addFunc, |
|
![]() |
bool | dtStatusDetail
(
dtStatus status, |
Returns true if specific detail is set. |
![]() |
bool | dtStatusFailed
(
dtStatus status |
Returns true of status is failure. |
![]() |
bool | dtStatusInProgress
(
dtStatus status |
Returns true of status is in progress. |
![]() |
bool | dtStatusSucceed
(
dtStatus status |
Returns true of status is success. |
![]() |
void | dtSwap
(
T& a, |
Swaps the values of the two parameters. |
![]() |
void | dtSwapByte
(
unsigned char* a, |
|
![]() |
void | dtSwapEndian
(
short* v |
|
![]() |
void | dtSwapEndian
(
unsigned int* v |
|
![]() |
void | dtSwapEndian
(
int* v |
|
![]() |
void | dtSwapEndian
(
unsigned long long int* v |
|
![]() |
void | dtSwapEndian
(
long long int* v |
|
![]() |
void | dtSwapEndian
(
float* v |
|
![]() |
void | dtSwapEndian
(
double* v |
@UE BEGIN Adding support for LWCoords. |
![]() |
void | dtSwapEndian
(
unsigned short* v |
|
![]() |
bool | dtTransformTileData
(
unsigned char* data, |
@UE BEGIN Offset and rotate around center the data in the tile |
![]() |
dtReal | dtTriArea2D
(
const dtReal* a, |
Derives the signed xz-plane area of the triangle ABC, or the relationship of line AB to point C. |
![]() |
void | Performs a vector addition. (v1_ + v2_) |
|
![]() |
void | Performs a vector copy. | |
![]() |
void | Derives the cross product of two vectors. (v1_ x v2_) |
|
![]() |
dtReal | Returns the distance between two points. | |
![]() |
dtReal | Derives the distance between the specified points on the xz-plane. | |
![]() |
dtReal | dtVdist2DSqr
(
const dtReal* v1, |
Derives the square of the distance between the specified points on the xz-plane. |
![]() |
dtReal | dtVdistSqr
(
const dtReal* v1, |
Returns the square of the distance between two points. |
![]() |
dtReal | Derives the dot product of two vectors. (v1_ . v2_) |
|
![]() |
dtReal | Derives the dot product of two vectors on the xz-plane. | |
![]() |
bool | Performs a 'sloppy' colocation check of the specified points. | |
![]() |
bool | dtVisEqual
(
const unsigned short* a, |
Returns true if the vectors are the same. |
![]() |
dtReal | Derives the scalar length of the vector. | |
![]() |
dtReal | Derives the square of the scalar length of the vector. (len * len) | |
![]() |
void | Performs a linear interpolation between two vectors. (v1_ toward v2_) |
|
![]() |
void | Performs a scaled vector addition. (v1_ + ( v2 * `s)) |
|
![]() |
void | Selects the maximum value of each element from the specified vectors. | |
![]() |
void | Selects the minimum value of each element from the specified vectors. | |
![]() |
void | dtVnormalize
(
dtReal* v |
Normalizes the vector. |
![]() |
dtReal | Derives the xz-plane 2D perp product of the two vectors. | |
![]() |
void | dtVRot90
(
dtReal* dest, |
Rotate by 90 degree increments. |
![]() |
void | dtVRot90
(
unsigned short* dest, |
Rotate by 90 degree increments. |
![]() |
void | Scales the vector by the specified value. (v_ * t_) |
|
![]() |
void | Sets the vector elements to the specified values. | |
![]() |
void | Performs a vector subtraction. (v1_ - v2_) |
Variables
Type | Name | Description | |
---|---|---|---|
![]() |
const unsigned int | DT_NULL_LINK | A value that indicates the entity does not link to anything. |
![]() |
dtReal | DT_REAL_MAX |