2

好吧,我正在用 Java 开发一个小游戏,我正在使用我在网上找到的这个Simplex Noise 生成器。我面临的问题是:我正在生成我的游戏世界,如下所示:

int width = 100;
int height = 100;
world = new int[width * height];

SimplexNoise noise = new SimplexNoise();
for (int i = 0; i < world.length; i++) {
     int x = i % width; // what are the coordinates from i ?
     int y = i / width ;


     int frequency = 15; 


     float h = (float) noise.noise((float) x / frequency, (float) y / frequency); 

         if (h >= -1 && h <= 0) {
                world[x + y * width] = 0; // air tile

         }
         else if (h > 0 && h <= 1) {
                world[x + y * width] = 1; // test tile

         }

      }

这很明显给了我二维噪声。最终结果如下所示: 看

据我了解噪音,2D噪音适用于自上而下的游戏。不过,我正在开发的是一款横向卷轴游戏(如泰拉瑞亚、星界边境、克雷亚等)。所以我需要一个 terragen 来给我地形的最顶层,谷歌告诉我那是一维噪声,所以这里的问题是:如何将这个二维噪声转换成一个类似于地形的一维噪声?

4

1 回答 1

0

只需将其设为高度 = 1 的图片即可。完成 :)

于 2016-10-19T06:23:12.923 回答