Search Issue Tracker
By Design
Votes
1
Found in
2017.4.1f1
Issue ID
1040418
Regression
No
NavMesh.SamplePosition calculates position between nearest points incorrectly
How to reproduce:
1. Open given Unity project
2. Enter "BugScene" scene
3. Notice 3 green lines in the scene menu
4. Try to move "WRONG!!!_NavMeshSamplePosition_Checker"
5. Notice that line is connecting randomly
Expected result: According to the documentation, NavMesh.SamplePosition() finds the closest point
Actual result: Lines are connected randomly
Reproducible with: 2018.3.0a1, 2018.2.0b4, 2018.1.2f1, 2017.4.4f1, 2017.3.2f1, 2017.2.2p2, 2017.1.4f1
Comments (1)
-
michaelday008
Oct 04, 2019 10:50
I've added my feedback and photo about this bug here:
My post: https://forum.unity.com/posts/5030135/edit
As you can see from the photo and forum post, it's returning a point 2 meters away downward rather than a point 0.1 meters away sideways like it should.
2019.1.10f1
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Animator State Labels are not Rendered correctly when using the Bitmap Renderer as the Default Editor Text Renderer
- LDR render target is used when HDR is enabled in URP and Recorder Source is set to 360 View
- Terrain Layer's changes are not added to the Undo history
- “IndexOutOfRangeException: Index was outside the bounds of the array.” error is thrown when large Text (TMP) GameObject Overflow field is set to Ellipsis
- The OnValidate method is not invoked when reverting changes on a Prefab Variant
Resolution Note (2021.1.X):
SamplePosition() is by design looking for a position on the NavMesh by first projecting the point up or down, and only when that does not return any result will the method search for other positions nearby. This behaviour is useful for some queries that need to inspect the NavMesh in a 2D plane.
The documentation will be updated to reflect this behaviour.