game2004/server/gameserver/navmeshbuilder.h
aozhiwei 7ff62bc87e 1
2020-08-13 17:16:14 +08:00

30 lines
760 B
C++

#pragma once
struct rcConfig;
struct dtTileCacheParams;
struct BuilderParams;
struct TileCacheData;
class dtNavMesh;
class MapInstance;
class NavMeshBuilder : public a8::Singleton<NavMeshBuilder>
{
private:
NavMeshBuilder() {};
friend class a8::Singleton<NavMeshBuilder>;
public:
void Init();
void UnInit();
dtNavMesh* Build(MapInstance* map_instance);
void OutputObjFile(MapInstance* map_instance);
private:
void InitRcConfig(BuilderParams& builder_params);
void InitTileCacheParams(BuilderParams& builder_params);
int RasterizeTileLayers(const int tx, const int ty,
const rcConfig& cfg,
TileCacheData* tiles,
const int maxTiles);
};