Unity NavMeshAgent 默认情况下是不会穿过其他 NavMeshAgent 的,但是可以通过以下几个步骤来实现 NavMeshAgent 之间的穿透:

  1. 打开 NavMeshAgent 组件,将 Obstacle Avoidance Type(避障类型)设置为 No Obstacle Avoidance(无避障)。

  2. 在 NavMeshAgent 所在的 GameObject 上添加一个 NavMeshObstacle 组件。

  3. 在 NavMeshObstacle 组件中将 Carve(雕刻)选项设置为 On。

  4. 调整 NavMeshObstacle 组件的 Size(大小)和 Center(中心)属性,以确保它覆盖了整个 NavMeshAgent。

这样做的效果是,NavMeshAgent 之间会互相穿过,但是它们会避开其他类型的障碍物。如果你希望 NavMeshAgent 能够穿过其他类型的障碍物,你可以将它们添加到 NavMeshObstacle 组件的 Ignore(忽略)列表中。


原文地址: https://www.cveoy.top/t/topic/n9d4 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录