【问题标题】:navmesh agent and obstacle on the same gameobject同一游戏对象上的导航网格代理和障碍物
【发布时间】:2020-10-04 08:06:06
【问题描述】:

我正在尝试在同一个游戏对象上添加导航网格障碍和导航网格代理组件。但是,我得到了一个奇怪的行为(对象会随机改变它的位置)。

所以,如果我们有两个特工在一条狭窄的走廊里,尽管他们如图所示相互阻挡了路径,但两个特工仍然有一条路径。两个代理将相互运行并相互推动,因为没有空间来执行 RVO(unity 用来避开障碍物的算法)并且 navmesh 不会重新规划新路径。 figure

谁能帮忙!

提前谢谢你

医学博士

【问题讨论】:

  • 请提供更好的解释您期望的结果以及您尝试的代码
  • 您为什么要这样做? Navmesh 代理已经避开了其他 navmesh 代理(基于它们的半径设置)。

标签: unity3d game-development navmesh


【解决方案1】:

尝试将 navmesh 障碍物放在 navmesh 代理的孩子身上

【讨论】:

  • 不,它不起作用,因为代理会尝试避开自己。有一个解决方案,但它很昂贵,我真的不想使用它,它在运行时烘焙 navmesh 并向代理添加 navmesh 卷。
  • 我google了一下,发现你不需要navmash对象,navmash代理可以通过radius设置相互避开。 Navmash avoidance
  • 兄弟,这无法解决我遇到的问题,请阅读问题并查看附图
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-11-05
相关资源
最近更新 更多