UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
Detour

Classes

struct  dtPoly
 
struct  dtMeshHeader
 
struct  dtMeshTile
 
struct  dtNavMeshParams
 
class  dtNavMesh
 
struct  dtNavMeshCreateParams
 
class  dtQueryFilter
 
class  dtNavMeshQuery
 
class  dtPathCorridor
 

Typedefs

typedef UEType_uint64 dtPolyRef
 
typedef UEType_uint64 dtTileRef
 

Functions

NAVMESH_API dtNavMeshdtAllocNavMesh ()
 
NAVMESH_API void dtFreeNavMesh (dtNavMesh *navmesh)
 
NAVMESH_API bool dtCreateNavMeshData (dtNavMeshCreateParams *params, unsigned char **outData, int *outDataSize)
 
NAVMESH_API dtNavMeshQuerydtAllocNavMeshQuery ()
 
NAVMESH_API void dtFreeNavMeshQuery (dtNavMeshQuery *query)
 

Detailed Description

Members in this module are used to create, manipulate, and query navigation meshes.

Note
This is a summary list of members. Use the index or search feature to find minor members.

Typedef Documentation

◆ dtPolyRef

A handle to a polygon within a navigation mesh tile.

◆ dtTileRef

A handle to a tile within a navigation mesh.

The following changes will invalidate a tile reference:

  • The referenced tile has been removed from the navigation mesh.
  • The navigation mesh has been initialized using a different set of dtNavMeshParams.

A tile reference is preserved/restored if the tile is added to a navigation mesh initialized with the original dtNavMeshParams and is added at the original reference location. (E.g. The lastRef parameter is used with dtNavMesh::addTile.)

Basically, if the storage structure of a tile changes, its associated tile reference changes.

Function Documentation

◆ dtAllocNavMesh()

NAVMESH_API dtNavMesh * dtAllocNavMesh ( )

Allocates a navigation mesh object using the Detour allocator.

Returns
A navigation mesh that is ready for initialization, or null on failure.

◆ dtAllocNavMeshQuery()

NAVMESH_API dtNavMeshQuery * dtAllocNavMeshQuery ( )

Allocates a query object using the Detour allocator.

Returns
An allocated query object, or null on failure.

◆ dtCreateNavMeshData()

NAVMESH_API bool dtCreateNavMeshData ( dtNavMeshCreateParams params,
unsigned char **  outData,
int *  outDataSize 
)

Builds navigation mesh tile data from the provided tile creation data.

Parameters
[in]paramsTile creation data.
[out]outDataThe resulting tile data.
[out]outDataSizeThe size of the tile data array.
Returns
True if the tile data was successfully created.

The output data array is allocated using the detour allocator (dtAlloc()). The method used to free the memory will be determined by how the tile is added to the navigation mesh.

See also
dtNavMesh, dtNavMesh::addTile()

◆ dtFreeNavMesh()

NAVMESH_API void dtFreeNavMesh ( dtNavMesh navmesh)

Frees the specified navigation mesh object using the Detour allocator.

Parameters
[in]navmeshA navigation mesh allocated using dtAllocNavMesh

This function will only free the memory for tiles with the DT_TILE_FREE_DATA flag set.

◆ dtFreeNavMeshQuery()

NAVMESH_API void dtFreeNavMeshQuery ( dtNavMeshQuery query)

Frees the specified query object using the Detour allocator.

Parameters
[in]queryA query object allocated using dtAllocNavMeshQuery