在gamedev.SE上,我们发现Perlin-noise的flash实现似乎与其他实现有很大不同。
我没有在网上找到任何实现细节,但我想知道是否有人可以告诉哪个算法用于闪存中的Perlin噪声。
使用bitmapData.perlinNoise(32, 32, 1, 200, false, false, 7, true);
其中仅生成这样的图像numOctaves
参数已被改变( 1
, 2
, 4
从左至右):
然而,Perlin噪声的其他实现看起来完全不同。 例如维基百科关于Perlin-noise的文章中的图片:
也培林噪声的此ActionScript实现产生相当不同的结果,因为你可以在下面的图像看到(八度1
, 2
和4
从左至右):
我最感兴趣的是只有一个八度的噪音。 在闪存实现中,您可以清楚地看到,噪声正在形成像分离的斑点。
重要提示 :flash中生成的噪声对fractalNoise
参数使用false
。 如果fractalNoise
设置为true
,则结果实际上与Wikipedia和其他实现中的结果非常相似。
参数说明如下:
布尔值。 如果该值为true,则该方法生成分形噪声; 否则会产生湍流。 具有湍流的图像在梯度中具有可见的不连续性,这可以使其更好地近似更清晰的视觉效果,如火焰和海浪。
我们可以看到,他们谈到湍流来描述产生噪音的方法。 所以我想问题是:闪存产生的输出是否仍然是Perlin噪声? 或者那种噪音还有另一个名字吗? 最重要的是:哪里可以找到一个像这样产生噪音的实现?