gpt4 book ai didi

java - 适合 2D 平台游戏的关卡表示/数据结构?

转载 作者:行者123 更新时间:2023-12-02 00:56:22 25 4
gpt4 key购买 nike

我即将用 Java 编写 Mario 的副本。我正在考虑级别的 2 种表示/数据结构,但我不确定应该选择哪一种:

  • 二维整数数组。
  • 将关卡分成几部分的四叉树。

它的优点和缺点是什么?

最佳答案

绝对是某种类型的二维数组。整数是一个好主意,但字符会是一个更好的主意。

考虑制作一个基本上是“ map ”的文本文件。它可以是 10 行 x 10 列的文本。在本例中,这是一个非常简单的 map 。也许您可以使用“a”表示草,使用“b”表示砖。通过这种方式,您甚至可以在付诸行动之前直观地了解您的 map 。但您基本上可以对您的应用程序进行编程,使其依赖于 map 的此文本文件。

例如,考虑这张 map :

bbbbbbbbbbbbbbbbb
aaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaa
aaaaaaaaaaaaaaaaa

所以,这看起来就像一条长长的砖路,上面有 3 排长草。想象一下让这个方案变得更加复杂,使用各种字符 a-z 和 A-Z,甚至像 $ 或 % 或 & 这样的标点符号。

然后,您只需更改文本文件即可即时创建 map 。如果您使用整数,则只能使用 10 个字符(或 10 个 map 对象本身)。例如,如果您有 10 个以上的对象,那么您如何制作一个数字彼此相邻的文本文件。您将不知道如何分隔数字。

四叉树的缺点是它过于复杂并且不允许快速访问特定元素。

关于java - 适合 2D 平台游戏的关卡表示/数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7155041/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com