创建3D网格的最佳方法是什么?
在java中,我正在制作一个在Minecraft风格的世界中发生的游戏。我需要一个3D网格来绘制每个块,我仍然有点混淆我应该如何把它全部放进去。
我正在使用LWJGL希望它能让我的生活变得如此简单。但如果有更好的东西可以使用,请告诉我。
可下载的基于Minecraft世界的教程链接非常棒!我找不到关于这个主题的任何教程(或下载ables)。
基本世界理念:
答案 0 :(得分:1)
这实际上取决于你想做什么......你想在哪里申请它?就个人而言,我非常喜欢数组。它通常是最便宜和最直接的解决方案。
通常只有在预测未来的变化时才需要复杂的数据结构(即数据结构会发生变化等)
您能否提供有关申请的更多详细信息?
答案 1 :(得分:1)
如果您想在此网格上更改大小或实现复杂逻辑,最好根据List创建自己的数据结构。但在大多数情况下(仅保存数据)普通数组是合适的。
答案 2 :(得分:1)
我会在你的空间中创建一个代表坐标(x,y,z)的'block'对象,你的块可以有像“textureTop”和“textureBottom”这样的成员以及你需要绘制它的其他任何东西。
然后,由于看起来你的空间是固定大小的,只需制作一个3D数组。
Block [] [] [] space = new Block [1024][1024][128];
然后,如果你想让你的块只是定义另一个对象Chunk,它基本上是一个16x16x128块的数组。