2012-03-03 86 views
0

我读到this关于佩林噪音的文章,并有几个问题,如果任何人有答案,因为我似乎有一些问题。在靠近底部的伪代码2D部分,它显示他随机生成数字,而不是一个变量作为1D代码中的参数,现在他使用'x'和'y'。这是二维噪声还是不需要?此外,他的PerlinNoise_2D函数现在取2个浮点参数,而不像1维示例中的那样。这些浮动值应该是什么,它们来自哪里,因为我无法找到如何让它们为我的生活。所以如果有人知道我的任何问题的答案,我将不胜感激一些帮助。谢谢。佩林噪音:需要一点帮助

编辑:好的更简单的问题,我在哪里得到2个浮点值作为PerlinNoise_2D函数的参数?

回答

1

A -dimensional pattern needs 参数。把它们想象成代表笛卡尔xy模式的坐标,以任何最适合您的应用的方式。

所以,如果,例如,你想产生一个宽×用C + + H噪音地图,你可以这样做:

float noise[H][W]; 
for (int y = 0; y < H; ++y) 
    for (int x = 0; x < W; ++x) 
     noise[y][x] = PerlinNoise_2D(x, y); 

然后,您可以使用noise值来调节像素的颜色值在位图中,例如。

(在这个例子中xy参数不需要是float S,但在一般情况下,你可能会想他们是。)