マウスにパーティクルが追従するような演出
はじめに
この記事は、TouchDesigner Study WeekendというTouchDesignerの勉強会で学んだことのまとめです。 TouchDesignerは私のような初心者は高機能すぎて、何をしたらよいのかわからなくなることが多いのでこの勉強会は貴重だと思っています。
完成イメージ
今回の完成イメージはこちらです。
パーティクルを作る
パーティクルは特別なことはしません。
Grid SOPで頂点を作成して、Particle SOPにつなぎます。
ここでのポイントは2つあります。 ①sort SOPのPoint Sort
をRandom
に設定して、パーティクルの発生順をランダムにする ②particle SOPのcompute Normals
をOff
にする
特に②が重要です。 particle SOPはデフォルトでは、法線方向に移動するようになっています。 その為移動させたくない場合は、compute Normals
をOff
にする必要があります。
Render TOPにつないで描画する
ここも特別なことはしません。 Geometry、Camera、LightとRender TOPをつなぎます。 materialは好みで付けます。 ここではConstant MATを設定しています。
ここまでくると以下のような表示になります
パーティクルを移動させる
ここからが今回の演出のポイントです。
パーティクルを特定の位置に移動させるためには、particle SOP
の3つ目の入力口(input2 Force)を利用します。 Forceに設定された値に対して、パーティクルの移動が起こります。
ForceにはForce SOP
を設定します。 構成は以下になります。
ポイントは、 ①Force SOP
の入力はMetaball SOP
のみです(少し例外もあるようですが)。 ②Metaball SOP
の範囲が、Forceの影響範囲になります。 ③Radial Force
にチェックがついていると、メタボールの中心に向かってフォースが起こります。
マウスに追従させる
最後にメタボールの位置と、マウス座標の位置をあわせます。 これでパーティクルがマウスに追従するようになります。
まずはマウス座標をMouse In CHOP
でマウスの座標を取得します。 だた、マウスの座標は-1.0 ~ 1.0の範囲の値になる為、Math CHOP
を利用して値を調整します。
そして最終的にできた値をMetaball SOP
のcenterに入れます。
これで完成です。