【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。
    在这里插入图片描述

烘焙成功:

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

posted @   星空探险家  阅读(143)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示