【问题标题】:Unity Navmesh destroy ObstacleUnity Navmesh 摧毁障碍物
【发布时间】:2022-07-22 04:17:08
【问题描述】:

我在 Unity 中有一个基本的 NavMesh 设置。一架飞机、一个代理人和一个目的地。 到目前为止,我的代理沿着路径到达目的地。

当我在路上设置障碍物时,它会停在障碍物处。

当路径被完全阻塞时,有没有办法告诉代理(或障碍物?)被摧毁?

当特工可以绕过障碍物时,我可以接受。但是一个完整的阻塞应该导致障碍物的破坏(在代理“接触”障碍物的那一刻破坏)

希望你能理解问题。

【问题讨论】:

  • Navmesh 只是它生成路径。如果你想破坏。您需要在碰撞时对其进行编码

标签: unity3d path destroy navmesh


【解决方案1】:

每当创建新障碍时,您都可以使用NavMeshAgent's CalculatePath method。给定一个目标位置,如果找到路径,它将返回true并填写path参数;如果找不到路径,它将返回false。你可以使用这个方法的结果来判断你的障碍物是否应该被删除。

请记住,此方法有可能返回 true,但 pathstatus 字段可能具有值 NavMeshPathStatus.PathPartial。因此,您需要确保同时检查CalculatePath 的返回值以及pathstatus 值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-07
    • 1970-01-01
    • 2011-08-25
    • 1970-01-01
    • 2022-01-24
    • 1970-01-01
    相关资源
    最近更新 更多