
SOPを使ったオーディオビジュアライズ
今回はSOPを使ってオーディオビジュアライズをしていきます。
サンプルファイルはこちら。
1. オーディオ信号を取得する
2. オーディオ信号を整形する
『03_CHOPとTOPで作るオーディオビジュアライズ』と同様に設定します。
3. 直線を描画する
まずは直線を描画しましょう。直線はLine SOPで作れます。SOPの使い方は『TouchDesignerの基本操作 / 3Dをレンダリングする』を参照してください。MATは今回はConstant MATを利用します。
Line SOPは線のPoint A(始点)とPoint B(終点)を設定できるので、(-2.5, 0, 0)から(2.5, 0, 0)と設定してください。大体初期のCamera COMPの位置から丁度画面いっぱいに線が引かれるはずです。
また、Number of Points(線の中にある点の数)をオーディオ信号の配列と同じ1280とします。こうすることで一見1本の線ですが、実際は点1(-2.5, 0, 0)、点2(-2.49609375, 0, 0)、点3(-2.4921875, 0, 0)・・・・点1279(2.49609375, 0, 0)、点1280(2.5, 0, 0)と点が線形に並び、それぞれが隣と線を張っている状態になっているはずです。
4, 直線をオーディオ信号と連携させる
それでは次にこのLine SOPの線を実際にオーディオ信号と連携させて動かしてみましょう。今回はCHOP to SOPを使います。Line SOPとGeometry COMPの間にCHOP to SOPを入れ込み、整形したオーディオ信号が入ったNull CHOPを参照させます。
ただしこれだけだとオペレータ横のエラーはまだ解消されません。このエラーはChannel ScopeとAttribute ScopeがCHOPと合ってないために起きているエラーです。
Channel ScopeにはSOPに変換したいCHOPのチャンネルの名称をスペース区切りで入力します。今回はchan1のみですね。
Attribute ScopeはSOPの中の何にCHOPの値を当てはめたいのか、というのを設定します。座標情報はP、色情報はCd、面の向きはNで指定します。また、RGBやXYZとは書かず、0,1,2で指定します。例えばX座標に当てはめたければP(0)、色情報の緑の値に当てはめたければCd(1)と入力します。
今回はY方向に当てはめたいのでAttribute ScopeにはP(1)と入力します。
こうするとエラーが消え、線が音の波形に連動して飛び跳ねるようになるかと思います。
5. 音を変えてみよう
完成したら色んな音で試してみましょう。様々な音楽ファイルやマイクからの音、手拍子、声。どんな音だとどんな絵が見られるでしょうか。
6. 演出を変えてみよう
時間に余裕があれば演出部分(TOP)を他にも色々試してみましょう。Camera COMPを動かしたり、Constant MATを変更してみるのも面白い効果が狙えるかもしれません。