FLOW vol.1 VJシステム

"高度3.6キロメートル"のスクリーンショット。海を上空から捉えた構図のイラストで、クジラとイルカが泳いでいます。"高度3.6キロメートル"のスクリーンショット。夕焼け時の海岸を上空から捉えた構図のイラストで、砂浜でギターを弾く人物、漂着した瓶、オレンジ色の風船が描かれています。

概要

2024年7月10日に立命館大学にて開催されたDJ / VJイベント『FLOW vol.1』のためのVJシステムです。

TouchDesignerを用いて構築し、リアルタイムに表示するシーンやオブジェクトの色を操作することができます。

当日は友人にオペレーターを依頼し、DJとしてパフォーマンスを行いました。

技術詳細

システムは、シーンと呼ばれる単位で管理されます。オペレーターはシーンを切り替えるほか、明度・コントラスト・色相オフセット・ブルーム・フラッシュといったエフェクトをその場で適用することができます。

以下のような4つのシーンの透明度をフェーダーで制御し、加算・ビビッドライト・差分のいずれかのモードで合成を行います。

1: 衛星の情報を表示するシーン。リアルタイムならではの演出を行うため、Celestrakから取得したデータを利用してその日その時間の人工衛星の座標データを毎秒約1万機分計算しビジュアライズを行いました。

2: 立体が回転するシーン。キックドラムを検知する度に画面左下の立方体からパーティクルが発せられ、3拍目のタイミングごとにパーティクルが大きく散らされます。
背景にワイヤーフレームとして映っている物体は、音声波形を踏まえて変形されています。

3: GLSLを用いた流体風の描画を行うシーン。毎ビートのタイミングで流れがリセットされ、ランダムなカラーマップとランダムな流れの強さが設定されます。

また、上記シーン1において、Celestrakから取得したTLEデータ(軌道要素データ)を内部で扱いやすいcsv形式に変換するため、DenoとTypeScriptを利用して変換ツールを作成しました。
さらに、同シーンは一度の位置計算が約100msと非常に重くなっているため、通常1プロセスで実行されるTouchDesignerプロジェクトから位置計算部分のみを別プロセスに分離して非同期処理を行うように設計しました。

パフォーマンス例

楽曲の権利上の問題から音声を消しております。ご理解ください。