最快的 Perlin-Like 3D 噪声算法?
Posted
技术标签:
【中文标题】最快的 Perlin-Like 3D 噪声算法?【英文标题】:Fastest Perlin-Like 3D noise algorithm? 【发布时间】:2011-10-21 06:14:47 【问题描述】:距离 Ken Perlin 首次发明噪音已有 20 多年了。有没有人设法制造出一种更快的 3D 噪声生成器,其特性接近 Perlin 的(程序化、自然的分组、减少的条带、规则的特征大小等)?
我正在尝试构建一个程序世界生成器,但目前 Perlin 并没有削减它。我承认我的实现不是现在最好的,但如果我要重写它,我想知道是否有更好的算法可用。
【问题讨论】:
【参考方案1】:你想要Simplex Noise。
计算成本更低 不是基于方形网格,因此没有明显的方向性伪影 更好地扩展到更高的维度:O(N^2) 与经典 Perlin 的 O(2^N) 的 N 维度here 有一个很好的解释。显然 Ken Perlin 的示例实现并不是最容易理解的代码。
【讨论】:
【参考方案2】:一年前,我也需要fast Perlin
Noise,终于实现了这个。
Java Gaming 在 java 中是 2d,但可以很容易地转换为 3d(实际上是在 java 以外的任何其他语言中)。
根据您的需要,您可以使用诸如noise2d*noise1d(或类似技巧)之类的东西,这是一个完整的技巧示例(应该是noise2d*noise1d)渲染Java Software。
【讨论】:
链接失效以上是关于最快的 Perlin-Like 3D 噪声算法?的主要内容,如果未能解决你的问题,请参考以下文章