我试图弄清楚如何为游戏编写一个 AI 避免算法,以免踩到熔岩区域。与熔岩物体中心的安全距离为静态 25 范围。如果它只是 1 个熔岩对象,我会计算玩家和对象之间的距离,然后计算角度并向后移动 x 范围,直到其 25 范围之外。
但是因为可以有超过 1 个熔岩物体,每个物体都有 25 范围的安全半径。需要考虑所有 3 个,否则它可能会从 1 移到另一个。
任何帮助,将不胜感激。
我试图弄清楚如何为游戏编写一个 AI 避免算法,以免踩到熔岩区域。与熔岩物体中心的安全距离为静态 25 范围。如果它只是 1 个熔岩对象,我会计算玩家和对象之间的距离,然后计算角度并向后移动 x 范围,直到其 25 范围之外。
但是因为可以有超过 1 个熔岩物体,每个物体都有 25 范围的安全半径。需要考虑所有 3 个,否则它可能会从 1 移到另一个。
任何帮助,将不胜感激。
如果它只是 1 个熔岩对象,我将计算玩家和对象之间的距离,然后计算角度并向后移动 x 范围,直到其 25 范围之外。
这本质上是正确的想法,你只需要扩展它。为每个熔岩圈创建一个向量。角度应该代表离圆“远”,大小代表离圆有多远。然后你可以将它们加在一起来表示一个转向向量。它并不完美,但您可以对其进行调整以很好地满足您的特定需求。
这只是最基本的,但该原理可以应用于各种转向,如追逐、回避、墙跟随等。
我所知道的最好的参考资料是Craig Reynolds(BOIDS 的创建者)的自主角色转向行为。该网站很旧,但信息与以往一样好。