我正在研究用于地形生成的各种类型的噪音,当有噪音变成perlin噪音和perlin噪音变成fbm时,我有点困惑。我希望有人可以在任何地方澄清我出错了。我目前假设以下
噪声:包含幅度和频率,它决定最终值以及某种形式的插值,如线性,余弦或立方。
Perlin Noise:八度音阶噪声函数的总和(每个连续函数包含两倍的频率)。从我到目前为止所读到的,幅度似乎总是表现为一致的减少。例如,Noise1包含A为1,Noise2包含A为0.5,Noise3包含A为0.25,这意味着每次振幅减半。它必须始终如此一致吗?
FBM:多个perlin噪声函数的总和,其中每个Perlin噪声函数必须只包含幅度减小的八度音程。
答案 0 :(得分:25)
Perlin Noise实际上是一种计算你所谓的噪音的方法。它是作为伪随机基础函数(或伪随机生成的梯度)的内插归一化梯度计算的相干噪声的一种形式。频率控制梯度的“采样”距离,因此频率越高,采样距离越小,每单位空间的梯度越大。 Amplitude控制噪声函数的最大值和最小值。
Hugo Elias' page on Perlin Noise对概念,算法等有很好的描述。 Perlin Noise FAQ以非常直观的方式解释了算法。
噪音是一个通用术语。 Perlin Noise只是一种相干噪声。但是有许多不同的类型具有不同的特征。
分形布朗运动实际上就是你所说的Perlin Noise。它是Perlin Noise(或其他类似的噪声函数)的多个步骤的组合,每个步骤具有不同的频率和幅度。在程序生成的背景下,从一个步骤到下一个步骤的频率变化称为空隙。从一个步骤到下一个步幅的幅度变化称为增益。
看看this。 这个关于地形生成的项目非常好地描述了fBM是什么以及如何计算它。
我希望这有帮助!
答案 1 :(得分:0)
珀林噪声使用斜率来创建圆气泡状相关性,从而获得更自然的外观。
八度法将各种规模的噪声组合在一起以生成更复杂的形式。显然,这种技术就是所谓的“分数布朗运动”。香港专业教育学院从未听说过此,但我做了一些研究,这就是我正在得到。您可以将八度音阶与任何类型的噪声一起使用,并根据需要在频率和振幅上进行缩放。出于数学原因完成了一半的工作,以便从结果中删除某些伪像。
但是这个八度音是一种独立于Perlin噪声的技术。它们可以很好地协同工作,因此可以一起使用。
白噪声八度音调又称白噪声fbm,称为值噪声。它倾向于露出下面的网格,因此通常使用perlin噪声。