如何在寻路情况下处理不同大小的物体(A*、A-star)
我正在开发一款使用 A 星 (A*) 进行路径查找的游戏,但我已经遇到了一些比单个网格方块更大的对象。
我在 16*16px 的网格上运行。 墙段为 16*16,因此单个正方形无法通过。 我的一些坏人的尺寸是 32*32,因此他们需要检查间隙是否至少有 2 个方格宽才能通过。
我不能简单地将网格设置为 32*32,因为设计需要薄壁(16 像素),并且有几个较小的坏人只占用一个 16*16 的正方形。
如何实现这个多分辨率环境? A-star 仍然是正确的工具吗?
I'm working on a game that uses A-star (A*) for path finding but I've come to a point where by I have some objects that are larger than a single grid square.
I'm running on a grid of 16*16px. wall segments are 16*16 and so make a single square impassable. Some of my baddies are 32*32 and so they need to check that a gap is at least 2 grid square wide in order to be able to pass throguh it.
I can't simply make the grid 32*32 as the design requires thin walls (at 16px) and there are a couple of smaller baddies that only take up a single 16*16 square.
How do I implement this mutli-resolution environment?
Is A-star still the correct tool to use?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
对于相对简单的解决方案,我会坚持使用与 16x16 大小的对象相同的 A* 算法,但使用稍微不同的方式来评估正方形是否适合步行。
For a relatively simple solution, I would stick to the same A* algorithm as for 16x16 sized objects but with a slightly different way to evaluate if a square is walkable or not.