我在this上读了一篇关于Perlin Noise的文章,如果有人有答案的话,我有几个问题,因为我似乎有一些问题。在靠近底部的伪代码2D部分中,它显示他随机生成数字,但在1D代码中,他不是使用一个变量作为参数,而是使用'x‘和'y’。这在二维噪声中是必需的还是没有?此外,他的PerlinNoise_2D函数现在接受2个浮点参数,而不是1维示例中的1个浮点参数。这些浮点值应该是什么,它们从哪里来,因为我找不到如何在我的生命中获取它们。因此,如果有人知道我的任何问题的答案,我将非常感谢您的帮助。谢谢。
编辑:好的,更简单的问题,我从哪里得到2个浮点值作为PerlinNoise_2D函数的参数?
发布于 2012-05-12 02:46:26
2-dimensional模式需要2参数。可以将它们视为表示模式的笛卡尔x和y坐标,以最适合您的应用程序的方式。
因此,例如,如果要在C++中生成W×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值来调整位图中像素的颜色值。
(在本例中,x和y参数不需要是floats,但在一般情况下,您可能希望它们是s。)
https://stackoverflow.com/questions/9546068
复制相似问题