I only want for the area inside the bounds given by the GraphUpdateObject to be updated, but the whole graph is being updated, which takes an unnecessarily long time.
requiresFloodFill, updatePhysics and updateErosion are set to false.
What could I be missing?
It should only update the tiles that intersect the bounds. Are you sure your bounds object is not too large?
How do you know it updates the whole graph?
I’m outputting the bounds and they’re pretty small (extents: 11, 10, 11).
I placed a cube in an area away from the bounds and it updated the navmesh around the cube.
Bounds are at x 37, cube at x -64…
Only the area around the building on the right should have been updated, but the area around the white cube is also updated.
Is there anything else in particular I can send I screenshot of?
Here’s the update call code:
GraphUpdateObject guo = new GraphUpdateObject(bounds);
guo.requiresFloodFill = false;
guo.updatePhysics = false;
guo.updateErosion = false;
AstarPath.active.UpdateGraphs(guo);
wait… updatePhysics is set to false. Then it shouldn’t even recalculate ANY tiles. It should just update the fields of the existing nodes. You are sure you are not updating the graphs from somewhere else and that you are not calling AstarPath.active.Scan() somewhere, right?
I’m also getting null reference exceptions from Pathfinding.TriangleMeshNode.ClosestPointOnNode
Any idea what that might be?
I’m only making the call if isScanning and IsAnyGraphUpdatesQueued are both false