Algorithm 避免踏入熔岩圈
我试图找出如何为游戏编写一个AI避免算法,以避免踩到熔岩区域。距离熔岩对象中心的安全距离为静态25范围。 如果它只是一个熔岩对象,我会计算玩家和对象之间的距离,然后计算角度并向后移动x范围,直到距离它25范围 但是,因为每个熔岩对象的范围安全半径可以超过1个。所有3个都需要考虑,否则它可能会从1移动到另一个 任何帮助都将不胜感激 如果它只是一个熔岩对象,我会计算玩家和对象之间的距离,然后计算角度并向后移动x范围,直到距离它25范围 这基本上是正确的想法,你只需要扩展它。为每个熔岩圈创建一个向量。角度应表示距离圆的“距离”,大小表示距离圆的距离。然后你可以把这些加在一起表示一个转向矢量。它不是完美的,但是你可以调整它来很好地满足你的特殊需求 这只是简单的基础,但这一原理可以应用于所有类型的转向,如追击、避让、跟墙等Algorithm 避免踏入熔岩圈,algorithm,collision-detection,Algorithm,Collision Detection,我试图找出如何为游戏编写一个AI避免算法,以避免踩到熔岩区域。距离熔岩对象中心的安全距离为静态25范围。 如果它只是一个熔岩对象,我会计算玩家和对象之间的距离,然后计算角度并向后移动x范围,直到距离它25范围 但是,因为每个熔岩对象的范围安全半径可以超过1个。所有3个都需要考虑,否则它可能会从1移动到另一个 任何帮助都将不胜感激 如果它只是一个熔岩对象,我会计算玩家和对象之间的距离,然后计算角度并向后移动x范围,直到距离它25范围 这基本上是正确的想法,你只需要扩展它。为每个熔岩圈创建一个向量
我所知道的最好的推荐信是克雷格·雷诺兹(BOIDS的创始人)。这个网站很旧,但信息还是和以前一样好。你对lava对象有上限吗。它们都是完全相同的大小?是否要计算到目标点的路径(例如最小长度路径),避免在距离任何熔岩质心25以内?或者你只是想计算一条路径(比如说最小长度的路径),假设你现在在一个熔岩圈中,那么它能让你脱离所有熔岩圈吗?算法的期望“输出”是什么?是否为是/否(例如安全/不安全),与不安全设备的最小距离?移动的方向?搬家的规模有多大?它是一个网格还是一个连续的景观?