1

我决定用 Java 制作一个 2d 游戏(使用 slick2d 库和 MarteEngine),我尝试在没有平铺地图的情况下完成它。如果没有平铺地图,我即将完成的任务似乎将非常困难。这些任务是路径和碰撞(建筑物和玩家/NPC之间)。

轻松实现寻路和碰撞系统几乎是不可能的吗?我想我总是可以在游戏中手动创建一个网格,但考虑到我必须移动它,因为我有一个功能相机,这可能会变得有点混乱。

此外,我所说的碰撞是指单元相互进入并成为一个单元。我想这可以归类为路径,但我没有解决方案来修复它们重叠。

任何想法表示赞赏!

4

1 回答 1

3

许多游戏仍然将地图划分为图块,即使它不是基于图块的游戏。

原因是您可以通过检查对象是否与其当前图块或任何相邻图块中的任何对象重叠来进行碰撞检测。只要您的对象不大于瓷砖,这种碰撞检测方案就可以保证解决所有可能的碰撞。

编辑

如果您有不基于图块的现有图形,则仍然值得使用这种“虚拟”网格进行碰撞检测等。如果您想检测碰撞,可以将特定网格方块标记为完全或部分“阻塞”地图特征等。

于 2012-05-16T03:27:11.330 回答