java – “动态”生成平铺噪声贴图

我有兴趣为我正在制作的2D游戏生成3D高度贴图.我正在使用它来创建像Minecraft或Dwarf Fortress这样的陆地群,并且之前已经完成了这个但是只有固定大小:

http://www.freewebs.com/shadowphantom/Results.html

我现在看到我应该研究Perlin或Simplex噪声,但我现在对如何将Perlin或Simplex噪声应用于2D高度阵列感到困惑.

任何对此的帮助将非常感激,因为我不知道该怎么做. “八度音”一词不是乐谱,这让我很害怕.

最佳答案 我认为您的问题可能不正确.高度图本身就是2D,您可以使用它来生成3D地形(网格).

http://en.wikipedia.org/wiki/Heightmap

如果是这种情况……那么您可以使用Perlin噪声函数来创建2D图像并将其用于高度图.如果您不确定创建的内容,可以使用GIMP或Photoshop或类似工具在2D Canvas上创建Perlin噪声.

Minecraft利用Perlin噪声功能创建3D立方体噪声.因此,如果高度图是2D Perlin噪音,那么Minecraft就是3D Perlin噪音.您还可以生成1D Perlin噪音.

Perlin噪声函数的优点在于,您可以通过数学控制纹理的“分辨率”和“偏移”,从而创建无缝环境.我相信Minecraft利用Perlin噪音作为基础,然后转向一些细胞自动机进行最后的修饰.

我不熟悉单面噪音.

编辑:这是一个测试一些数学函数的链接(在处理中)
http://processing.org/learning/basics/noise2d.html

点赞