前回を踏まえて一から簡単なスケッチを書いてみました。クリックをすると再生と一時停止を切り替えられます。
新しい VJ 用のフレームワークを作ろうと思っていたので、クリエイティブ・コード・ベルリンのオンライン・ジャム(通常はコワーキングスペースに集まって個人またはグループでコーディングをする会なのですが、今回はそのオンライン版)に参加したことをきっかけに一から p5.js と Tone.js でコードを書いてみました。
ホワイト・ノイズをパーカッションとして鳴らしながら円を描くだけのシンプルなスケッチですが、コードは今後の展開を想定して少し複雑にしています。まず、Ticker クラスが10ミリ秒ごとにループして BPM にあわせてコールバックを呼びます(この部分は Tone.js 等を用いて効率化できると思います)。円は CircleExpand クラスが描画していて、中心は固定の位置、半径と線のアルファは経過した時間に応じて変化します。このクラスは今後 Stick や他の図形から直接呼ばれるようにした方が扱いやすいかなと考えています。
音は描画よりも少し遅らせた方が知覚的にバランスが取れると思っているので遅延させています。また、次回以降に音色を増やした際に円以外の図形が出るように、そしてその図形や色と音の質が近く感じられるような表現を目指したいと思います。