我试图得到一个随机的位置,我确定在导航网格上。我使用SamplePosition通过调用另一个生成屏幕字段中确定的随机位置的方法,让我在导航网格上的网格位置关闭。
我尝试了几次,但主要是我得到一个位置Vector3(无限,无限,无限)
public static Vector3 RandomMapPosition()
{
Vector3 pos = new Vector3(Random.value, Random.value, Camera.main.transform.position.z);
var searchPosition = Camera.main.ViewportToWorldPoint(pos);
return searchPosition;
}
public static Vector3 RandomNavMeshPosition()
{
var randomPos = RandomMapPosition();
NavMeshHit hit;
NavMesh.SamplePosition(RandomMapPosition(), out hit, 1.0f, NavMesh.AllAreas);
return hit.position;
}