我是世界生成和用于它们的算法的新手,所以我希望有人能给我一些有用的解释或代码或两者兼有,或链接到我在寻找解决方案时错过的一些资源。
如何使用 OpenSimplexNoise 获得更高的细节级别?
我知道在像 PerlinNoise 这样的算法中,它可以通过频率和相加倍频来完成。那么如何使用 OpenSimplexNoise 实现这样的目标呢?
这是我已经得到的:
private static final int WIDTH = 512;
private static final int HEIGHT = 512;
private static final double FEATURE_SIZE = 64;
public static void main(String[] args)
throws IOException {
OpenSimplexNoise noise = new OpenSimplexNoise(1233313l);
BufferedImage image = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_BYTE_INDEXED);
for (int y = 0; y < HEIGHT; y++)
{
for (int x = 0; x < WIDTH; x++)
{
double value = noise.eval(x / FEATURE_SIZE, y / FEATURE_SIZE);
int rgb = 0x010101 * (int)((value + 1) * 127.5);
image.setRGB(x, y, rgb);
}
}
ImageIO.write(image, "png", new File("noise1.bmp"));
}
我怎样才能实现它以获得更平坦的森林等结果?