Forráskód Böngészése

Fix NavigationPolygon not updating consistently on rebakes

Fixes that NavigationPolygon did not update in all cases because the internal NavigationMesh was not always unref and freed which blocked creating a new mesh later if nothing else freed it.
smix8 1 éve
szülő
commit
9dd05964d5
1 módosított fájl, 4 hozzáadás és 0 törlés
  1. 4 0
      scene/resources/2d/navigation_polygon.cpp

+ 4 - 0
scene/resources/2d/navigation_polygon.cpp

@@ -193,6 +193,10 @@ void NavigationPolygon::set_data(const Vector<Vector2> &p_vertices, const Vector
 	for (int i = 0; i < p_polygons.size(); i++) {
 		polygons.write[i].indices = p_polygons[i];
 	}
+	{
+		MutexLock lock(navigation_mesh_generation);
+		navigation_mesh.unref();
+	}
 }
 
 void NavigationPolygon::get_data(Vector<Vector2> &r_vertices, Vector<Vector<int>> &r_polygons) {