Java 制作3D网格的最佳方法?
创建三维网格的最佳方法是什么 在java中,我正在制作一个游戏,它发生在一个有点像Minecraft风格的世界中。我需要一个3D网格来绘制每个区块,但我仍然有点困惑,不知道应该如何将其全部放进去 我正在使用LWJGL,希望它能让我的生活变得更加轻松。但是如果有更好的东西可以使用,请告诉我 链接到一个可下载的基于minecraft world的教程将非常棒!我还没有找到关于这个主题的任何教程(或下载这些教程) 世界基本理念:Java 制作3D网格的最佳方法?,java,multidimensional-array,landscape,Java,Multidimensional Array,Landscape,创建三维网格的最佳方法是什么 在java中,我正在制作一个游戏,它发生在一个有点像Minecraft风格的世界中。我需要一个3D网格来绘制每个区块,但我仍然有点困惑,不知道应该如何将其全部放进去 我正在使用LWJGL,希望它能让我的生活变得更加轻松。但是如果有更好的东西可以使用,请告诉我 链接到一个可下载的基于minecraft world的教程将非常棒!我还没有找到关于这个主题的任何教程(或下载这些教程) 世界基本理念: 生成一个1024 x 1024 x 128的三维网格 不同的地块类型,
- 生成一个1024 x 1024 x 128的三维网格
- 不同的地块类型,具有灵活的土地顶部/底部(因此土地更“真实”)
- 基于区块的土地系统,可分为16 x 16 x 128区块
- 这取决于你想做什么。。。您想在哪里应用它?就我个人而言,我相当喜欢数组。这通常是最便宜、最直接的解决方案
复杂的数据结构通常只在您看到未来的变化时才需要(例如,数据结构将发生变化等)
您能否提供有关应用程序的更多详细信息?如果您希望更改大小或在此网格上实现复杂的逻辑,最好基于列表创建您自己的数据结构。但在大多数情况下(仅保存数据),普通数组是合适的。我会创建一个“块”对象,表示空间中的坐标(x,y,z),块可以有“textureTop”和“textureBottom”等成员,以及其他任何需要绘制的对象 然后,因为你的空间看起来是固定大小的,所以只需将它们做成一个3D阵列
Block [] [] [] space = new Block [1024][1024][128];
然后,如果您想创建块,只需定义另一个对象块,它基本上是一个16x16x128块数组。那么它最终会是一个3深数组吗?(对于x、y和z值?)