创造游戏关卡的最有效方法(LibGDX)



我正在制作一款类似平台游戏的游戏(不完全是平台游戏;这是垂直滚动),但关卡加载应该是相似的。到目前为止,我已经遇到了两种创造游戏关卡的方法。

  1. 使用贴图。基本上,你可以使用一些贴图在Tiled地图编辑器(如Tiled)中创建关卡,然后将其用作关卡。

  2. 使用ArrayList并存储所有游戏对象(砖块,尖峰等)。所有的对象及其位置都将存储在一个文本文件中,然后在运行时使用StringTokenizer和循环访问并放入数组中。

在我看来,使用平铺地图更容易,更方便。使用平铺贴图和/或使用ArrayList方法有什么缺点吗?或者有没有其他更好的方法?

答案就在你的问题中:平铺地图更容易,更方便,文本文件更难,更不方便。

与其使用带有自定义解析的文本文件,为什么不使用标准的适合的格式,如XML或JSON。对于这些格式,Goos的解析器已经存在。

如果你的问题是关于性能,不用担心,平铺贴图是XML格式,如果你在未来试验性能问题,你可以预处理你的平铺贴图,以生成一个优化的格式,为你的游戏

Tile Maps一旦你学会它可能很容易使用,但学习它可能并不容易。这里是维基百科:

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

如果你认为你的游戏足够简单,你可以用ArrayListStringTokenizer来完成它,我说为什么不呢?

但是,假设你的游戏在此过程中变得更加复杂。您可能希望使用Tile Maps来帮助您管理这种复杂性。

最新更新