创建游戏关卡最有效的方式是什么?(LibGDX)

3
我正在制作一个类似平台游戏的游戏(不完全是平台游戏;它是垂直滚动的),但关卡加载应该是相似的。到目前为止,我已经发现了两种创建游戏关卡的方法。
  1. 使用Tile Maps。基本上,您可以使用一些瓷砖在诸如Tiled等平铺地图编辑器中创建您的关卡,然后将其用作您的关卡。

  2. 使用ArrayList并存储所有GameObject(砖块,钉子等...)。所有对象及其位置将存储在文本文件中,然后使用StringTokenizer和循环在运行时访问并放置到数组中。

对我来说,使用Tiled Map更容易和方便。使用Tiled Maps的缺点或使用ArrayList方法的优点有哪些?还是有其他更好的方法吗?
2个回答

3
答案就在你的问题中:瓦片地图更简单方便,文本文件更困难不方便。
不要使用自定义解析的文本文件,而是使用标准且适合的格式,比如XML或JSON。这些格式已经有了好的解析器。
如果你的问题是关于性能的,不用担心,瓦片地图是XML格式的。如果将来出现性能问题,你可以预处理瓦片地图以生成适合游戏的优化格式。

1
瓷砖地图可能一旦你学会了就很容易使用,但学习它并不一定容易。这是维基页面以确保正确:

https://github.com/libgdx/libgdx/wiki/Tile-maps

如果你认为你的游戏足够简单,可以使用 ArrayListStringTokenizer 完成,那我觉得为什么不呢。
但是,如果你的游戏在后期变得更加复杂。你可能希望采用瓷砖地图来帮助你管理这种复杂性。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接