在均匀地形上进行2D,非网格移动的寻路


12

我正在寻找游戏中寻路的最佳解决方案。该地图最终是基于网格的,但是实体使用浮点定位,并且可以沿任何方向移动到地图上的任意点。我的游戏中的“地面”具有统一的移动成本,但是当然可能存在障碍。大多数障碍都是静态的,尽管游戏中还会有其他有生命的实体,但我可能会不考虑它们逃脱-这是一款等距的主题医院风格战略游戏,因此没有战斗力。

我见过的大多数寻路文章都涉及3D或基于网格的2D运动。有什么建议可以涵盖我的用例吗?非常感谢。


现在没有时间给出适当的答案,但是您可能想看一下这个问题:stackoverflow.com/questions/4054701/…
基督教徒

Answers:


14

这称为“任何角度寻路问题”。您基本上有两个选择:

  1. 为您的地图生成导航网格并使用A *搜索

    导航网格

  2. 使用专门用于任意角度寻路的算法在网格上搜索。传统上,做到这一点的方法是A * +路径平滑(线性插值等),但是如今,更流行的替代方法是Theta *,它比路径平滑更易于实现,运行更快并产生更好的结果。

    Theta *与路径平滑

以上所有方法均产生接近最佳的结果。如果出于某种原因您需要最佳结果,则该论文已于几周前发布。但是,我还没有机会阅读它,所以我不知道它的效率或实现的难度。


万分感谢!只要它接近,我就不需要完全最佳的结果。
tommaisey

1
只是以为我会将这篇文章添加到您列出的文章中。看起来像是原始论文的作者之一所链接论文的更为简洁的版本。我想我要和Theta *一起去,干杯。
tommaisey

链接无效。请更新答案。
firelynx16年
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.