在研究Perlin噪声的内部工作原理时,我想知道为什么要使用Perlin噪声而不是简单值噪声。据我所知,以下情况适用:Perlin噪声是基于晶格的噪声函数,它为基础噪声空间中的每个点。现在,您可以通过计算距离矢量和梯度矢量之间的点积来查询空间中每个点的值。之后,您对计算出的所有值求平均值并获得查询的值。

但是,如果不使用梯度矢量而使用随机值,那么值噪声就不是一样的吗?由于我也在值噪声中的值之间进行插值,因此我无法通过在Perlin噪声中使用额外的计算步骤(点积)来看到任何好处。

为什么我要使用Perlin噪声而不是值噪声?为什么佩林噪音如此受欢迎?

评论

关于Math.SE的相同问题。

#1 楼

佩林噪声的好处是频率的整体分布。由于值噪声使用内插的简单值,因此几行值的差异仅会稍有不同。结果是,图片的某些区域可能包含很少的更改,而某些区域则包含了很多更改。

通过使用渐变,您正在减小此效果,因为插值不是通过值完成的,而是在切线之间计算的。现在,要保持平坦曲线(两个切线必须是共线的)变得更加困难。社区:请参阅此Math.SE帖子。