1

在 Unity 中,当导航到 Window > Navigation 时,我看到在 Agents 选项卡和 Bake 选项卡中都有代理的配置。它们是代理的半径、高度、最大坡度和台阶高度。为什么它们存在于上述两个选项卡中?

具体来说,我的地图使用不同高度的地形,并且我有 2 种代理类型:汽车和飞机。我希望我的车只能在平原上行驶,而飞机应该能够在任何地方行驶:山、平原或水。当我在“代理”选项卡中更改最大坡度和下降高度(在每种代理类型上测试)时,什么都没有发生,但是当我在“烘焙”选项卡中执行此操作然后按“烘焙”时,Car 和 Airplane 代理都可以移动所有内容。请您指出我的错误并告诉我正确的方法!

谢谢阅读。

4

1 回答 1

3

将我的工作解决方案留给以后的人。

我在手册中找到了这个:

  • NavMesh 烘焙设置描述了所有 NavMesh 代理如何碰撞或避开静态世界几何体。为了控制内存的预算和 CPU 负载,烘焙设置中只能指定一种大小。
  • NavMesh 代理属性值描述了代理如何与移动障碍物和其他代理发生碰撞。

这意味着代理选项卡中的设置仅用于代理-代理冲突,而不是用于在世界中移动。

要拥有不同的导航代理,您将需要多个 NavMesh。如果我没记错的话,这似乎可以通过新的 NavMesh 组件工作流程实现。

于 2017-07-11T02:12:18.340 回答