GiantsTools/NavMeshGenerator/NavMeshUtil.h

43 lines
859 B
C

#pragma once
//////////////////////////////////////////////////////////
// Smart pointer deleters
struct NavMeshDeleter
{
void operator()(dtNavMesh* navMesh)
{
if (navMesh)
dtFreeNavMesh(navMesh);
}
};
struct NavMeshQueryDeleter
{
void operator()(dtNavMeshQuery* navMeshQuery)
{
if (navMeshQuery)
dtFreeNavMeshQuery(navMeshQuery);
}
};
//////////////////////////////////////////////////////////
// Serialization logic
// Note: identical to Recast's demo app so it can be loaded by it
struct NavMeshSetHeader
{
int magic;
int version;
int numTiles;
dtNavMeshParams params;
};
struct NavMeshTileHeader
{
dtTileRef tileRef;
int dataSize;
};
static const int NAVMESHSET_MAGIC = 'M' << 24 | 'S' << 16 | 'E' << 8 | 'T'; //'MSET';
static const int NAVMESHSET_VERSION = 1;