summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSaracen <SaracenOne@gmail.com>2017-10-09 13:14:27 +0100
committerSaracen <SaracenOne@gmail.com>2017-10-09 13:14:27 +0100
commit70e47996b8fe88ddcd27aa8b796c18af8c2c7e13 (patch)
tree1e523939f6ee0d22cd9144b33082330bc0cd2cc8
parentea37f44ec84edb3309845bfb27e863d5aa529ce4 (diff)
Fix bug in navmesh generation when using meshes with multiple
surfaces.
-rw-r--r--editor/plugins/navigation_mesh_generator.cpp4
1 files changed, 3 insertions, 1 deletions
diff --git a/editor/plugins/navigation_mesh_generator.cpp b/editor/plugins/navigation_mesh_generator.cpp
index 526db3a582..86dc5c3663 100644
--- a/editor/plugins/navigation_mesh_generator.cpp
+++ b/editor/plugins/navigation_mesh_generator.cpp
@@ -38,9 +38,11 @@ void NavigationMeshGenerator::_add_vertex(const Vector3 &p_vec3, Vector<float> &
}
void NavigationMeshGenerator::_add_mesh(const Ref<Mesh> &p_mesh, const Transform &p_xform, Vector<float> &p_verticies, Vector<int> &p_indices) {
- int current_vertex_count = p_verticies.size() / 3;
+ int current_vertex_count = 0;
for (int i = 0; i < p_mesh->get_surface_count(); i++) {
+ current_vertex_count = p_verticies.size() / 3;
+
if (p_mesh->surface_get_primitive_type(i) != Mesh::PRIMITIVE_TRIANGLES)
continue;