单声道噪声与Perlin噪声

raR*_*aRa 38 textures image-processing perlin-noise simplex-noise

我想知道为什么在Simplex问世后,Perlin噪音仍然如此受欢迎.单一噪声是由Ken Perlin自己制作的,并且它假设接管他的旧算法,这种算法对于更高的尺寸和更好的质量(没有可见的伪像)来说是缓慢的.

单面噪声在2001年出现,在过去的10年里,我只看到人们谈论Perlin噪声,当涉及到为地形生成高度图,创建程序纹理等等.

任何人都可以帮助我,Simplex噪音有一些缺点吗?我听说有传言说Perlin噪音在1D和2D噪音方面更快,但我不知道它是否真实.

谢谢!

Con*_*ion 25

如果只是因为名字,我不会感到惊讶.你必须在Perlin噪音和Simplex噪音之间做出选择.后者更新,有一些优点.但是,你知道,这听起来像是两者的"简单"版本.我会选择更复杂的; 噪音应该是复杂的,不是吗?

人们倾向于非理性.

  • 我一直认为单纯噪声比perlin噪声更简单,质量更低.是的 (7认同)
  • 这是一个普遍的误解。_Simplex_并不意味着_simpler method_;它指的是[将三角形概括为任意尺寸](https://en.wikipedia.org/wiki/Simplex)。简而言之,单纯形噪声使用三角形而不是正方形的网格。 (3认同)
  • 好点子。这就是我害怕的。想象一下有多少人使用过时的慢算法只是因为更好算法的名字听起来不够吸引人:-) (2认同)

Eng*_*eer 23

"如果没有破产,请不要修理它."

看看你是否能找到告诉你为什么Simplex更好的人."它更快,并扩展到多个维度"和"单一噪声试图降低高维噪声函数的复杂性"是我发现的.我们大多数人都在2或3个维度工作,如果我们有幸能够随着时间的推移做些事情,可能会有4个维度.

我认为可以说Perlin的实时使用率太低而无法处理,对于大多数用途来说,标准的Perlin噪声就足够了.在预渲染(例如在电影行业中使用)中,时间并不重要,因为渲染很慢; 在实时仿真中,我们有足够的方法来减少正在进行的处理范围,你不可能每隔几纳秒/毫秒产生大量的噪声图 - 这只是基本的实时优化.

  • "它更快,并扩展到多个维度" - ["_计算成本更低,N维度的复杂度为O(N),而不是经典噪声的O(2 ^ N)"(http:// webstaff. itn.liu.se/~stegu/simplexnoise/simplexnoise.pdf) (4认同)

Pik*_*lek 7

对于经典Perlin噪声的一些偏好可能来自能够使用已知值导致已知视觉特性,而不是投入寻找使用单纯噪声获得等效输出所需的输入参数所需的时间.

[单面噪声]具有略微不同的视觉特性,因此它并不总是直接插件替代经典噪声.依赖于经典噪声的详细特征的应用,如精确的特征尺寸,精确的值范围或更高阶的统计数据,可能需要进行一些修改,以便在使用单纯噪声时更好看.
Stefan Gustavson的Simplex噪音揭秘


Kel*_*n M 7

Ken Perlin为他的单纯噪声算法申请了专利.根据我的知识,他的经典算法并未获得专利.

  • 根据记录,Simplex 噪声专利已于 2022 年 1 月到期:https://patents.google.com/patent/US6867776 (4认同)