【Processing】noiseSeed()関数の使い方【ノイズのパターンを決める】

【Processing】noiseSeed()関数の使い方【ノイズのパターンを決める】
  • URLをコピーしました!
ワタタク

今回の記事の目的はProcessingの「noiseSeed()関数」を理解し、自分なりに使ってみること。

やってみた結果、生え方が決まっている植物を育てるイメージを持ちました。

この記事を書いた人

クリエイティブコーダー Watataku のプロフィール写真
ワタタク(Watataku)

上達の研究家 / アーティスト

「才能」ではなく「発見」で描く。文系・36歳からの上達ハック。

  • ゼロから独学でクリエイティブコーディングに挑戦し、以下の実績を達成
    • 開始1年8ヶ月目までに公募6つに挑戦し、3つ入選(勝率50%)
      • KITTE大阪の18メートルあるAxCROSS大型スクリーン
      • 虎ノ門ヒルズステーションタワーB2F TOKYO NODE エントランスサイネージで展示
      • UN:O(東京大手町)にある会員限定のサテライトオフィスにて2作品常設展示
    • 開始1年9ヶ月目に、虎ノ門ヒルズ49階、地上250mのインフィニティプールへ作品提供・展示
  • 【上達の秘密】

記事内のProcessingのバージョンは4.3。

目次

【Processing】noiseSeed()関数について

noiseSeed()関数について
  • 英語でnoiseは「ノイズ」、seedは「種」という意味
    • ノイズのパターンを決める「種」を設定するという意味
  • noiseSeed()関数は、コンピュータがランダムに見えるパターンを作るときに、そのパターンが毎回同じになるようにします
  • noiseSeed()を使わないと毎回違うパターンが生成されるため、再現性が必要な場合には必ず使うようにします

【Processing】noiseSeed()関数の書き方【構文】

noiseSeed()関数の書き方【構文】
  • noiseSeed(整数)
    • 主にnoise()関数と一緒に使う

【Processing】noiseSeed()関数の使い方【画像とコード】

【1】ノイズのパターンを決めるのをコンソールで確認する

noiseSeed(100)で、nose(1)のときは、何回実行しても、以下の数値になりました。

// ノイズのパターンを決める数値を100に設定
noiseSeed(100);

// ノイズが1のとき
float n = noise(1);

// ノイズの値を表示
println(n);

【2】noiseSeed()を使って点を決められたパターンで描く

何度実行しても同じ結果になりました。

int numPoints = 1000; // 描く点の数(今回は1000個)
float noiseScale = 0.02; // 点をバラバラに配置するための値(ノイズの細かさ)

void setup() {
  size(400, 400); // キャンバスの大きさ(幅400, 高さ400)
  background(255); // 背景を白色(255)にする
  
  // ノイズの「たね」を決める
  noiseSeed(99); // 99 という数でノイズの形を決める

  // 点を描くためのループ(1000回繰り返す)
  for (int i = 0; i < numPoints; i++) {
    // 点の場所を決める(ノイズを使ってバラバラに配置)
    float x = noise(i * noiseScale) * width; // 横の位置を決める
    float y = noise((i + 1000) * noiseScale) * height; // 縦の位置を決める

    // 点を描く(黒い色の点を置く)
    stroke(0); // 点の色を黒色にする
    point(x, y); // x, y の位置に点を描く
  }
}

void draw() {
  // このプログラムでは、setup() で全部描いちゃうので draw() は使わない
}

【Processing】noiseSeed()関数はどんな表現で使えそうか

点・線・図形などの表現で、再現性のあるnoiseを使いたいときに使います。

【Processing】noiseSeed()関数を使ってみた感想

再現性があるのは助かります。

noiseだとどんな結果が出てくるのか分からず、前のがいいなって思っても同じような結果にするのが難しいですから。

noiseの使い始めは、noiseSeed()関数を使うことが多くなりそうです。

ワタタク

それでは今日もレッツワクワクコーディング。

ワタタク(Watataku)
上達の研究家 / アーティスト
独学1年9ヶ月で虎ノ門ヒルズ49階、地上250mのインフィニティプールへ作品提供・展示

言葉×コード×手書き。三位一体の表現が成長する過程の記録

【発信】クリエイティブコーディング(2024.3~) / 絵(2025.11~) / モレスキン / 思考法 / 生き方

▼運営者について
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次