From 3833b22b088b2b3bc99b1b02751a29bf3c8b9107 Mon Sep 17 00:00:00 2001 From: Kawe Mazidjatari <48657826+Mauler125@users.noreply.github.com> Date: Wed, 28 Aug 2024 16:35:05 +0200 Subject: [PATCH] Recast: split traverse link creation from static path creation --- src/naveditor/Editor.cpp | 8 -------- src/naveditor/Editor_TileMesh.cpp | 14 ++++---------- 2 files changed, 4 insertions(+), 18 deletions(-) diff --git a/src/naveditor/Editor.cpp b/src/naveditor/Editor.cpp index 29ccce4a..6efcb8a8 100644 --- a/src/naveditor/Editor.cpp +++ b/src/naveditor/Editor.cpp @@ -1168,12 +1168,6 @@ bool Editor::createStaticPathingData(const dtTraverseTableCreateParams* params) return false; } - if (!createTraverseLinks()) - { - m_ctx->log(RC_LOG_ERROR, "createStaticPathingData: Failed to build traverse links."); - return false; - } - return true; } @@ -1181,8 +1175,6 @@ bool Editor::updateStaticPathingData(const dtTraverseTableCreateParams* params) { if (!params->nav) return false; - const int numTraverseTables = NavMesh_GetTraverseTableCountForNavMeshType(m_selectedNavMeshType); - if (!dtUpdateDisjointPolyGroups(params)) { m_ctx->log(RC_LOG_ERROR, "updateStaticPathingData: Failed to update disjoint poly groups."); diff --git a/src/naveditor/Editor_TileMesh.cpp b/src/naveditor/Editor_TileMesh.cpp index 4d9a1178..e512b4ac 100644 --- a/src/naveditor/Editor_TileMesh.cpp +++ b/src/naveditor/Editor_TileMesh.cpp @@ -736,11 +736,7 @@ void Editor_TileMesh::buildTile(const float* pos) connectTileTraverseLinks(tile, false); connectTileTraverseLinks(tile, true); - dtTraverseTableCreateParams params; - createTraverseTableParams(¶ms); - - dtCreateDisjointPolyGroups(¶ms); - updateStaticPathingData(¶ms); + buildStaticPathingData(); } } @@ -804,11 +800,7 @@ void Editor_TileMesh::removeTile(const float* pos) ++it; } - dtTraverseTableCreateParams params; - createTraverseTableParams(¶ms); - - dtCreateDisjointPolyGroups(¶ms); - updateStaticPathingData(¶ms); + buildStaticPathingData(); } } @@ -853,6 +845,8 @@ void Editor_TileMesh::buildAllTiles() } connectOffMeshLinks(); + createTraverseLinks(); + buildStaticPathingData(); // Start the build process.