PureData Perlin Noise
PureDataで一次のパーリンノイズ(Perlin Noise)を作りました。
参考文献
(1)K.Perlin (July 1985) "An Image Synthesizer"
https://doi.org/10.1145%2F325165.325247
(2)Perlin noiseを理解する
(3)その3 パーリンノイズとフラクタル
~ フラクタブルな地形を作る基盤 ~
まず、基本形
基本波形です。
次に、オクターブを加算していった波形です
ゴーッというこもったようなノイズです。
解説 (先の文献を参照せよ。)
c(t) = 1-3t² + 2|t|³となる関数に対し、
L(t) = α * t
W(t) = C(t)*L(t)
とする。すなわち、原点(x=0)で1、x=1及びx=-1で0になる次のような3次関数C(t)に対して傾きがaで原点を通る直線L(t)をC(t)に乗算を行ったものである。(引用元:文献(3))
これを実装するには、phasor~を位相シフトし、コサイン波形を出力しunipolar化した関数(いわゆるDC Offsetが乗ったものであり、ハニング窓と同様であるwavelet関数)を用意し、phasor~のClockに合わせてnoise~をSample&Holdし元のphasor~と乗算して傾きαを定義し、先に用意したwavelet関数と乗算し、一次のPerlin Noiseを作成できる。この方式により、オクターブによる加算合成や周波数シフトが容易となる。
更新履歴
2023/08/23 18:05 新規作成