【p5.js】カラフルな雨【作品No.16】

【p5.js】カラフルな雨【作品No.16】
  • URLをコピーしました!

この記事を書いた人

ワタタク(Watataku)
  • クリエイティブコーダー / アーティスト
  • 「人の心に寄り添う、機能するアート」を探究しています
  • アートとテクノロジーが、社会や個人のウェルビーイングにどう貢献できるかに、関心があります

目次

作品の画像とコード

【作品No.16】カラフルな雨

【p5.js】カラフルな雨【作品No.16】

アニメーション。

// 参考にさせていただいたページとURL
// rain
//https://editor.p5js.org/kelsierose94/sketches/MU2Y21aG0

var drop = [];
let colors = ["#f94144","#f3722c","#f8961e","#f9844a","#f9c74f","#90be6d","#43aa8b","#4d908e","#577590","#277da1"] // 色の配列を追加

function setup() {
  createCanvas(400, 400);
  background(255); // 背景色を白に設定
  for (var i = 0; i < 150; i++) {
    drop[i] = new Drop();
  }
}

function draw() {
  background(255); // 背景色を適用
  for (var i = 0; i < 150; i++) {
    drop[i].show();
    drop[i].update();
  }
}

function Drop() {
  this.x = random(0, width);
  this.y = random(0, -height);
  this.color = color(colors[int(random(colors.length))]); // 色をランダムに選択
  this.size = random(20, 50);

  this.show = function () {
    noStroke();
    fill(this.color);
    ellipse(this.x, this.y, this.size, this.size);
  };

  this.update = function () {
    this.speed = random(5, 10);
    this.gravity = 1.05;
    this.y = this.y + this.speed * this.gravity;
    this.size = this.size * 0.98; // サイズを少しずつ小さくする

    if (this.y > height) {
      this.y = random(0, -height);
      this.size = random(20, 50); // リセット時にサイズを元に戻す
      this.gravity = 0;
    }
  }
}

感想

カラフルな雨が降ったら、雨が好きになる。

ワタタク

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

ワタタク(Watataku)
クリエイティブコーダー/アーティスト
AIと共に、「人の心に寄り添う、機能するアート」を探究しています。

ここは、その思索と創造の全記録を記す、思考の実験室(アトリエ)です。

僕の創作の源泉は、人生経験そのものです。
不当な出来事や、精神的な支配の中で、私の心は何度も粉々に砕け散りました。しかし、その一つ一つの破片をどのようにすれば鮮やかな絵の具にできるかを考え、ゆっくり心のパレットに色を整えていきました。その、長い、長い、自身との対話の果てに「人の役に立つアートを作りたい」という考え方にたどり着きました。

かつて、僕の武器は、アコースティックギター弾き語りと、カメラでした。
オリジナルソングの演奏でお客様投票1位となった「物語の力」。
世界20カ国の旅で培った、多様な「視点」。

今、僕は、それら全ての経験を、「コード」という、新しい言語で、世界に問いかけています。

このブログでは、作品の制作過程や、日々の発見、そして、僕自身の上達の軌跡を記録していきます。

僕の旅が、あなたの日常を、ほんの少しでも豊かにするための、光になることを願って。

クリエイティブコーディングロード運営者 ワタタク
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次