We found a situation where NavMesh.SamplePosition() doesn't return the closest point to the sample position. In the attached picture, the sampled position is the red sphere and the result hit position is the white sphere. The expected result would be a point on the plane where the normal hits the red sphere. However, the actual returned result is always on the "internal edge" of the navmesh (white line on the blue navmesh). The bug only occurs near one of the horizontal white lines. In this test map, it only occurs if the plane slope is 45 degrees or more but in our game, we've seen it in smaller slopes. Reported bug case #702030. The reported bug was on Unity 5.0.2p2 but the issue is still there on Unity 5.1.0f3 Anyone have any ideas about this? Actually, what would be the best way to get the the closest point on the navmesh below the sampled position, which is the position we're looking for, and not the closest point in 3D as is supposed to return NavMesh.SamplePosition()?