aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/tools/mesh_extractor/MeshExtractor.cpp8
-rw-r--r--src/tools/mesh_extractor/TileBuilder.cpp7
2 files changed, 9 insertions, 6 deletions
diff --git a/src/tools/mesh_extractor/MeshExtractor.cpp b/src/tools/mesh_extractor/MeshExtractor.cpp
index 7653faae2ab..3443b3d9e0a 100644
--- a/src/tools/mesh_extractor/MeshExtractor.cpp
+++ b/src/tools/mesh_extractor/MeshExtractor.cpp
@@ -378,8 +378,8 @@ int main(int argc, char* argv[])
if (extractFlags & Constants::EXTRACT_FLAG_TEST)
{
- float start[] = { -230.133f, 191.085f, -24.9191f };
- float end[] = { -396.309f, 150.828f, 7.82184f };
+ float start[] = { -44.641f, -34.606f, -1.045f };
+ float end[] = { -66.18f, 20.222f, -1.128f };
//
float m_spos[3];
@@ -408,7 +408,7 @@ int main(int argc, char* argv[])
dtPolyRef m_startRef;
dtPolyRef m_endRef;
- FILE* mmap = fopen("mmaps/389.mmap", "rb");
+ FILE* mmap = fopen("mmaps/555.mmap", "rb");
dtNavMeshParams params;
int count = fread(&params, sizeof(dtNavMeshParams), 1, mmap);
fclose(mmap);
@@ -427,7 +427,7 @@ int main(int argc, char* argv[])
for (int j = 0; j <= 32; ++j)
{
char buff[100];
- sprintf(buff, "mmaps/389%02i%02i.mmtile", i, j);
+ sprintf(buff, "mmaps/555%02i%02i.mmtile", i, j);
LoadTile(navMesh, buff);
}
}
diff --git a/src/tools/mesh_extractor/TileBuilder.cpp b/src/tools/mesh_extractor/TileBuilder.cpp
index 73987162cc8..1871cb6186d 100644
--- a/src/tools/mesh_extractor/TileBuilder.cpp
+++ b/src/tools/mesh_extractor/TileBuilder.cpp
@@ -192,8 +192,6 @@ uint8* TileBuilder::BuildInstance( dtNavMeshParams& navMeshParams )
rcFreeHeightField(hf);
rcFreeCompactHeightfield(chf);
rcFreeContourSet(contours);
- rcFreePolyMesh(pmesh);
- rcFreePolyMeshDetail(dmesh);
delete vertices;
delete triangles;
delete areas;
@@ -206,6 +204,8 @@ uint8* TileBuilder::BuildInstance( dtNavMeshParams& navMeshParams )
// keep in mind that we do output those into debug info
// drop tiles with only exact count - some tiles may have geometry while having less tiles
printf("No polygons to build on tile, skipping.\n");
+ rcFreePolyMesh(pmesh);
+ rcFreePolyMeshDetail(dmesh);
return NULL;
}
@@ -214,6 +214,9 @@ uint8* TileBuilder::BuildInstance( dtNavMeshParams& navMeshParams )
printf("Creating the navmesh with %i vertices, %i polys, %i triangles!\n", params.vertCount, params.polyCount, params.detailTriCount);
bool result = dtCreateNavMeshData(&params, &navData, &navDataSize);
+ rcFreePolyMesh(pmesh);
+ rcFreePolyMeshDetail(dmesh);
+
if (result)
{
printf("NavMesh created, size %i!\n", navDataSize);