几个月来,我一直在尝试各种方法来创建基于图块的二维游戏。我一直让每个瓦片成为“瓦片”类的单独对象。瓦片对象存储在对象的二维数组中。这已被证明是非常不切实际的,主要是在同时渲染许多图块的性能方面。我通过只允许渲染玩家一定距离内的瓷砖来帮助实现这一点,但这也不是那么好。当我尝试在游戏中编辑磁贴的值时,我也遇到了对象返回空指针异常的问题。这与 2D 数组中的对象未正确初始化有关。
还有其他更简单的方法吗?我无法想象每个基于图块的游戏都使用这种确切的方式,我一定忽略了一些东西。
编辑:也许 LWJGL 不是要使用的正确库?我在使用 LWJGL 实现字体系统时遇到了类似的问题……输入超过一个句子会使 FPS 降低 100 甚至更多。