1
This commit is contained in:
parent
13a3180041
commit
3c4be5d3b8
@ -314,24 +314,8 @@ dtNavMesh* NavMeshBuilder::Build(MapInstance* map_instance)
|
|||||||
BuilderParams builder_params;
|
BuilderParams builder_params;
|
||||||
InitBasic(builder_params);
|
InitBasic(builder_params);
|
||||||
InitRcConfig(builder_params);
|
InitRcConfig(builder_params);
|
||||||
InitTileCacheParams(builder_params);
|
CreateTileCache(builder_params);
|
||||||
|
CreateNavMesh(builder_params);
|
||||||
dtStatus status;
|
|
||||||
|
|
||||||
builder_params.tile_cache = dtAllocTileCache();
|
|
||||||
status = builder_params.tile_cache->init(&builder_params.tcparams,
|
|
||||||
builder_params.talloc,
|
|
||||||
builder_params.tcomp,
|
|
||||||
builder_params.tmproc);
|
|
||||||
|
|
||||||
dtNavMeshParams params;
|
|
||||||
InitNavMeshParams(builder_params, params);
|
|
||||||
builder_params.navmesh = dtAllocNavMesh();
|
|
||||||
|
|
||||||
status = builder_params.navmesh->init(¶ms);
|
|
||||||
if (dtStatusFailed(status)) {
|
|
||||||
abort();
|
|
||||||
}
|
|
||||||
BuildTiles(builder_params);
|
BuildTiles(builder_params);
|
||||||
return builder_params.navmesh;
|
return builder_params.navmesh;
|
||||||
}
|
}
|
||||||
@ -727,3 +711,31 @@ int NavMeshBuilder::RasterizeTileLayers(const int tx, const int ty,
|
|||||||
|
|
||||||
return n;
|
return n;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool NavMeshBuilder::CreateTileCache(BuilderParams& builder_params)
|
||||||
|
{
|
||||||
|
InitTileCacheParams(builder_params);
|
||||||
|
builder_params.tile_cache = dtAllocTileCache();
|
||||||
|
dtStatus status = builder_params.tile_cache->init
|
||||||
|
(&builder_params.tcparams,
|
||||||
|
builder_params.talloc,
|
||||||
|
builder_params.tcomp,
|
||||||
|
builder_params.tmproc);
|
||||||
|
if (dtStatusFailed(status)) {
|
||||||
|
abort();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
bool NavMeshBuilder::CreateNavMesh(BuilderParams& builder_params)
|
||||||
|
{
|
||||||
|
dtNavMeshParams params;
|
||||||
|
InitNavMeshParams(builder_params, params);
|
||||||
|
|
||||||
|
builder_params.navmesh = dtAllocNavMesh();
|
||||||
|
dtStatus status = builder_params.navmesh->init(¶ms);
|
||||||
|
if (dtStatusFailed(status)) {
|
||||||
|
abort();
|
||||||
|
}
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
@ -30,4 +30,6 @@ public:
|
|||||||
const rcConfig& cfg,
|
const rcConfig& cfg,
|
||||||
TileCacheData* tiles,
|
TileCacheData* tiles,
|
||||||
const int maxTiles);
|
const int maxTiles);
|
||||||
|
bool CreateTileCache(BuilderParams& builder_params);
|
||||||
|
bool CreateNavMesh(BuilderParams& builder_params);
|
||||||
};
|
};
|
||||||
|
Loading…
x
Reference in New Issue
Block a user