Version: 2019.2
  • C#
Experimental: this API is experimental and might be changed or removed in the future.


Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.



public void MoveLocations(NativeSlice<NavMeshLocation> locations, NativeSlice<Vector3> targets, NativeSlice<int> areaMasks);


locationsArray of positions to be moved across the NavMesh surface. At the end of the method call this array contains the resulting locations.
targetsWorld positions to be used as movement targets by the agent.
areaMasksFilters for the areas which can be traversed during the movement to each of the locations.


Translates a series of NavMesh locations to other positions without losing contact with the surface.

Does the exact same thing as NavMeshQuery.MoveLocation only it acts sequentially on a batch of locations, given their respective targets and area filters. All three array parameters must have the same length.

The results are returned in-place in the locations array.

See Also: NavMeshQuery.MoveLocationsInSameAreas, NavMeshLocation.