【Unity】SetDestination can only be called on an active agent that is on a NavMesh 报错解决方案

Unity使用NavMesh过程中报错SetDestination can only be called on an active agent that is on a NavMesh

问题原因:未烘焙NavMesh
解决方法:烘焙NavMesh界面
烘焙方法:

Navigation 窗口(菜单:Window > AI > Navigation)中进行处理的。

  • 选择场景中需要生成寻路的几何体-可行走表面和障碍物。

  • 在NavMesh面板中选择需要烘焙寻路的物体,检测是否勾选Navigation Static.

  • 在这里插入图片描述

  • 在这里插入图片描述

  • 根据你的agent大小来调整bake 面板的设置。

    • Agent Radius : agent可以距离墙体 ,窗户或边缘多近的距离。
    • Agent Height : agent可以通过的最低的空间高度。
    • Max Slope : agent可以直接行走上去的最小坡度。
    • Step Height: agent可以踩上(走上)的障碍物最高高度。
  • 点击bake按钮烘焙NavMesh。
    在这里插入图片描述

烘焙成功:

会显示蓝色网格,或者在资源中也会出现烘焙好的资源
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/ainklg/article/details/129740477