ドリップン・スニップ | どりっぷんのブログ

ドリップン・スニップ

あなたの生活役立つWEB情報イッパイお届け
-->
スポンサーリンク

【スクリプトあり】p5.jsで簡単に要素にパーティクルを追加する

Pocket


こんにちは!
時々、webサイトのヘッダや背景に、こういうパーティクルが動いている事、ありますよね?

なんかかっこいいな〜と思ったので、このパーティクルが簡単に作れるp5.jsファイルを作ってみました。

p5.jsファイルを使うには

人が作ったp5.jsのファイルを使うのは、意外にも簡単です。
p5.jsってそもそも何?という方は、こちらの記事をご覧ください。
p5.jsでwebページにアニメーションを作ろう - 01

まず、htmlのヘッダファイルにp5.jsのcdnを記述します。

<script src="https://cdnjs.cloudflare.com/ajax/libs/p5.js/0.5.4/p5.min.js"></script>

次に、ダウンロードしたp5.jsのファイルをアップロードし、同じようにリンクします。

<script src="assets/js/sketch.js" type="text/javascript"></script>

こんな感じでしょうか。

そして最後に、パーティクルを入れたい場所のdiv要素に、id="p5Canvas"を加えてあげてください。

cursor_%e3%81%a8_index_html_-_yaparticle_-____ideaprojects_yaparticle_

何も無いページに挿入するだけなら、これだけです!
肝心のファイルは以下からダウンロードください。

設定を変更する

さて、パーティクルの大きさや数、早さなどを変更したい場合には、スクリプトの最初の方にある/*settings*/に手を加えることによって簡単に思い通りのパーティクルを作ることが出来ます。

    num = 20;//パーティクルの数。初期値は20。
    minSize = 5;//パーティクルの最小値サイズ。初期値は5。
    maxSize = 15;//パーティクルの最大サイズ。初期値は15。
    partColor = color(0, 0, 255, 60);//パーティクルの色。r,g,b,a
    lineColor = color(100, 100, 255, 20);//ラインの色。r,g,b,a
    distance = 100;//どのくらいの距離の場合線を描画するか。初期値は100px。
    minSpeed = 0.1;//パーティクルの最低速度。初期値は0.1。
    maxSpeed = 0.3;//パーティクルの最高速度。初期値は0.3。
    sameDirection = false;//パーティクルが同じ方向に進むか、バラバラの方向に進むか。falseの場合バラバラの方向に進む。
    w = canvasElement.clientWidth;// div要素の大きさを取得。ここにpxで実数を指定することも出来る
    h = canvasElement.clientHeight;// div要素の大きさを取得。ここにpxで実数を指定することも出来る

詳細は右側にコメントとして書いてありますが、数値を変更するだけでパーティクルの大きさや挙動を変えることが出来ます。

まとめ

世の中にはどうもprticle.jsなるものも出回っているそうですが、恐らく設定やdiv要素にfix出来る点なんかはこっちのほうが簡単なはず!
是非お試しください。

                           

  関連記事

【SEO】ブログのアクセスアップしたい?じゃあキーワードについてちょっとおさらいしておこう。

ブログのアクセスが伸びてきて嬉しい僕です。 この前お仕事でちょっとSEOについて ...

CSVファイルの加工を自動化したい?JavaScriptでやりましょう。

こんにちは! 今回はちょっとエンジニア向けの記事になります。 JavaScrip ...

p5.jsでwebページにアニメーションを作ろう - 07 function

前回は完成目標と配列について書きました。 今回はfunctionという仕組みと ...

p5.jsでwebページにアニメーションを作ろう - 05 何度も繰り返そう

かなり間が空いてしまいました、僕です。 前回までの記事を並べておきますので、ざっ ...

p5.jsでwebページにアニメーションを作ろう - 08 オブジェクト

こんにちは、人間の僕です。("株式会社人間"様とは無関係です) 前回に引き続きp ...

-p5.js, WEB開発