このページでは[「P5.js 日本語リファレンス」] (https://qiita.com/bit0101/items/91818244dc26c767a0fe) の noiseDetail関数を説明します。
noiseDetail()
説明文
Perlin ノイズ関数によって生成される特性と詳細レベルを調整します。物理学の高調波と同様に、ノイズは数オクターブにわたって計算されます。オクターブが低いほど出力信号に寄与し、ノイズの全体的な強度が定義されます。一方、オクターブが高いほどノイズシーケンスの細部が細かくなります。
デフォルトでは、ノイズは4オクターブにわたって計算されます。各オクターブは前のオクターブの50%の強度から始まり、前のオクターブの半分に相当します。この減衰量は、fallout パラメタで変更できます。例えば、減衰量0.75は, 各オクターブが以前の低いオクターブの75%(25%減少)の影響を持つことを意味します。 0.0から1.0までの任意の値が有効ですが、0.5より大きい値は, noise() から1.0より大きい値が返される場合があることに注意してください。
これらのパラメータを変更することにより、noise() によって作成された信号を特定のニーズや特性に合わせて調整できます。
構文
noiseDetail(lod, falloff)
パラメタ
-
lod
Number:ノイズが使用するオクターブの数 -
falloff
Number:各オクターブの減衰係数
例
function setup() {
createCanvas(200, 200);
}
function draw() {
let noiseScale = 0.03;
background(0);
for (let x = 0; x < width; x++) {
for (let y = 0; y < height; y++) {
noiseDetail(4, 0.4);
let noiseVal = noise(x * noiseScale, y * noiseScale);
stroke(noiseVal * 255);
point(x, y);
}
}
}
実行結果
著作権
p5.js was created by Lauren McCarthy and is developed by a community of collaborators, with support from the Processing Foundation and NYU ITP. Identity and graphic design by Jerel Johnson.
ライセンス
Creative Commons(CC BY-NC-SA 4.0) に従います。