3

我设法掌握了 Perlin 噪声的工作方式,并使用这个很棒的 PDF 作为参考实现了一次像素版本,但是,很明显它非常慢。

首先想到的是批量生成它——而不是遍历从 0.0 到 1.0 的每个像素,生成一个numpy.linspace然后使用 numpy 的矢量化操作对其进行操作,但这似乎超出了我的范围,我不断迷路并删除我写的所有内容。

一种 StackOverflower 可以帮助我吗?尽可能少的示例代码和每一步的详细解释都会对我有很大帮助。

编辑:批次是指包含空间中不同点的 perlin 噪声值的数组,而不是我的 noise() 方法一次只生成一个像素。

4

1 回答 1

1

如果猜对了,那么 Asmagedon 想要逐次计算他的噪声纹理,然后将它们绘制到其他不同大小的目标上。

一种方法是使用scipy.signal.resample,它可以对信号进行插值和二次采样。从记忆中,它一次只能在一个维度上工作——只需循环维度。

可能有更好的方法来进行抗锯齿,但这很容易。

于 2011-12-24T13:38:16.723 回答