This commit is contained in:
aozhiwei 2020-08-18 16:12:20 +08:00
parent c45c43d7fa
commit e5028fdc79
2 changed files with 7 additions and 6 deletions

View File

@ -68,7 +68,7 @@ void NavMeshBuilder::InitTileCacheParams(BuilderParams& builder_params, dtTileCa
tcparams.walkableClimb = builder_params.kAgentMaxClimb; tcparams.walkableClimb = builder_params.kAgentMaxClimb;
tcparams.maxSimplificationError = builder_params.kEdgeMaxError; tcparams.maxSimplificationError = builder_params.kEdgeMaxError;
tcparams.maxTiles = builder_params.tile_width * builder_params.tile_height * EXPECTED_LAYERS_PER_TILE; tcparams.maxTiles = builder_params.tile_width * builder_params.tile_height * EXPECTED_LAYERS_PER_TILE;
tcparams.maxObstacles = 128; tcparams.maxObstacles = 128 * 1000;
} }
void NavMeshBuilder::InitNavMeshParams(BuilderParams& builder_params, dtNavMeshParams& params) void NavMeshBuilder::InitNavMeshParams(BuilderParams& builder_params, dtNavMeshParams& params)
@ -132,6 +132,7 @@ void NavMeshBuilder::BuildTiles(BuilderParams& builder_params)
DT_COMPRESSEDTILE_FREE_DATA, DT_COMPRESSEDTILE_FREE_DATA,
0); 0);
if (dtStatusFailed(status)) { if (dtStatusFailed(status)) {
abort();
dtFree(tile->data); dtFree(tile->data);
tile->data = 0; tile->data = 0;
continue; continue;
@ -143,7 +144,7 @@ void NavMeshBuilder::BuildTiles(BuilderParams& builder_params)
// Build initial meshes // Build initial meshes
for (int y = 0; y < builder_params.tile_height; ++y) { for (int y = 0; y < builder_params.tile_height; ++y) {
for (int x = 0; x < builder_params.tile_width; ++x) { for (int x = 0; x < builder_params.tile_width; ++x) {
builder_params.tile_cache->buildNavMeshTilesAt(x,y, builder_params.navmesh); builder_params.tile_cache->buildNavMeshTilesAt(x, y, builder_params.navmesh);
} }
} }
} }
@ -350,9 +351,9 @@ int NavMeshBuilder::RasterizeTileLayers(BuilderParams& builder_params,
bool NavMeshBuilder::CreateTileCache(BuilderParams& builder_params) bool NavMeshBuilder::CreateTileCache(BuilderParams& builder_params)
{ {
LinearAllocator* talloc = nullptr; LinearAllocator* talloc = new LinearAllocator(320000);
FastLZCompressor* tcomp = nullptr; FastLZCompressor* tcomp = new FastLZCompressor();
MeshProcess* tmproc = nullptr; MeshProcess* tmproc = new MeshProcess();
dtTileCacheParams tcparams; dtTileCacheParams tcparams;
InitTileCacheParams(builder_params, tcparams); InitTileCacheParams(builder_params, tcparams);

@ -1 +1 @@
Subproject commit 8b8fb38a7ccafb18d01fd4a5505cf6997dcac91b Subproject commit 203adbe1f4d7cf2f9d57e8bf8b80102c5fdd47a1