Mutek 2022 TouchDesigner Workshopまとめ
ざっくりまとめ
12/9(金)にMutek×Derivative主催でTouchDesigner Workshopが行われました。
まさかの平日!!
ってことで、参加できなかった方も多いと思うので、
こちらの記事で内容をまとめたいと思います!
内容量がすごかったので、
重要だな~
とか
知らなかった~
とか
使えるな~
っていうものに絞って紹介します!
3つのセクション
Session1 - Ben Voigt - SceneChanger
SceneChangerってなんですの?
シーンを変えるときに便利なTouchdesignerのパレットです
例えば、
複数人で違う映像やtoxをつくって、それを切り替えたりすることができます!
処理もかなり最適化されてるので、実用的です!
Templateの作り方
Generate Template 押すだけ
最終Outputは絶対out1につなげ!
って言わないといけないよ
素材ごとで解像度が違うとき
そのままアウトすると、引き延ばされた映像になっちゃうので、
どこかに、fitをかませる必要ある!
ここに!
SceneChanger/sceneGateMaster0
の select TOP
のあとに入れる
fit TOP
のresolutionは、
w の方は、parent.SceneChanger.par.Resolutionw
h の方は、parent.SceneChanger.par.Resolutionh
すると、映像が崩れなくなるよ~
音も送りたいよ~
Templateの中に audio file in
なり device in
なりあるときは、
Out CHOP
をつなげよう(音のデータいらなくても、audio file inつなげてvolumeを0に)
そして
GateMasterのなかに select CHOP
をいれて、参照できるようにします
ちな便利expressionを入れます
そして、SceneChangerのなかで切り替えられるようなCHOPを組んでoutにつなぎます
ちょっと手間だな~とは思ったんですけど、まあやるしかないっぽい
音切り替えるときのSample Rateに注意
これは知らなかったこと
audioA から audioB に切り替えるときに、
audioのsample rateが違うとき に注意しないといけない
その違いでノイズが出てしまうの!
そん時は、resample CHOP
でaudio B のほうに合わせるといいよ!!
とのことでした
Sceneを切り替える用のUIが用意されてるんかい!
っていうこころの声。
Generate UIを押すと出てくる!
こんなの!
ここで、このUIのtextがジャギってることに気づいて、
まえのバージョンのやつだね、あはは、ってベンさん笑ってた
SceneChangerのextension
extension に指定されているtext DAT
ここにたくさんの関数が定義されてて、
たとえば、
def SceneChange(self, sceneIndexOrName, fadeTime=None):
とか
ここに定義されているので、他のところから
op('sceneChanger').SceneChange('scene1', fadeTime=5)
みたいな感じで呼び出せるんやって
めっちゃプログラマーやん
って心の声が出ました。この拡張性すごいな。
恥ずかしながら、extensionの使い方知らんくて、、、
可能性感じた
Timer CHOPのsegmentがめちゃ使い勝手よい件
時間でなにかエフェクト出したりとかシーン切り替えたいってときありますよね?
そんなときに Timer CHOP
のsegment使うと、自由きく
Table DATにほしいsegmentを書いて、
lengthを上書きできて、segmentの秒数を変えることができる
これをCHOP executeなりと調理することで、自由に制御できる
最適化について
基本viewerがオフになってたら、基本的にcookきれるから大丈夫やよ
ただ、中で何かがcook走ってる可能性もあるのでその時は、パレットのProbeで確認します。
Custom ParameterのMenuを作る方法
これめっちゃ知りたかったやつ!!
custom parameterでメニューを選んで、
menu sourceに
tdu.TableMenu(op(opのパス))
って書くと、
Table情報からmenuを作れる!
これやりたかったやつ!!
ありがとう😊
一旦ロードさせとこ
sceneChangerの中身は、一旦ロードさせないと変える時に重くなる可能性ある。
そんなときは、execute dat のOnStartで
Cook()関数書いて一番親のCOMPを走らせる。
個人的な感想
シーンの切り替えがディゾルブじゃなくて色々できるようになると、熱い!!
DMXの演出の切り替えに使えたな〜
Session2 - Spektra Tech-Talk
京都のクリエイティブテックユニット
森岡さんとかと一緒にやってる
Emissivescapes
ScatteredscapesシュミレーションにTouchdesignerつかってる
詳しい話は、森岡さんのアドカレの記事にて公開予定!
雨対策大変そう!!
結構内容難しかったので、だいぶ割愛させていただきます笑笑
Session3 - Takashi Kawamura - Visual effects
先日のTD meet upの時に使った、映像の作り方
こんなやつ
どーやって作ってるか
基本はインスタンシングの考え方
uv coordinateのような画像を用意
この時急に、TOPをポイントのSOPに変えられて
何が起こった??
アクティブにしてからショートカットV
それをz軸に並べる
それをgeometryのポジション情報に渡す
ここで、ランダムに表示非表示をつけたいので、
Activeにノイズの0-1データを送ってる
こんなんできるのかいつもアルファでやってた
至る所でReorder TOP使ってて、Level TOP、Composite TOPに続いて、スタメン入りを果たした。
このエフェクトのやり方知りたかったけど、時間なくて解説できず。
あとでサンプル見よっと
個人的な感想
どーやったらこんな方法と絵を思いつくんだ
言われたらできるけど、これを0から作り上げることがすごいんだ
Session 4 - Ben Voigt - Text and Geo Text COMP
Touchdesigner 2022バージョンから追加された2つ。
いくらズームしてもジャぎらないText COMP
slagというフレームワークを使って、実装した(さすがの開発力)
あらゆるTextの表示ができる
- int
- float(桁数指定できる)
- string
- タイムコード(00:25 みたいな)
- マルチライン
などなど
編集もできんのかい
パラメーターをediableにすると、
なんと編集までできる
これでField COMPの完全上位互換となってしまった
そんな使い道があるのかGeo Text COMP
Geo Text COMP追加されたのは知ってたけど、正直テキストを3D表示させたい時くらいしか使い道ないと思ってた
今回紹介されたこれは使えるなな使い方2つ
- 柔軟なテキストアニメーション
- 3D空間におけるデバッグ表示
1. 柔軟なテキストアニメーション
1文字1文字がCHOPの値を参照できる(CHOP Specification)ので、Phaser CHOPとかでこんなアニメーションができます。
これは体験型コンテンツの待機画面とかですごい使えそうだなって思った
2. 3D空間におけるデバッグ表示
一体ぜんたいこれがどういう意味かというと、こんなことができますとということ
これは、geometryのpointの座標が入ったDATを参照して(DAT Specification)、配置することができます。
データビジュアライゼーション系で使えるなと思った。3次元のパラメーター持つ機械学習とかででてくるデータにラベルを貼ったりとか。
だれかやってください(笑)
Learning Resource
BenさんがTouchdesigner学習者のために、Learning Resourceをまとめてくれています!
miwa maroon channelも入っててめちゃうれしい。ありがとうございます!
他にもおすすめがあったら、Benさんに連絡して!とのこと
Moment Factoryのプロトタイプルーム見学
渋谷にあるMoment Factoryの東京支社に体験型コンテンツのデモルームがあって見学。
リンク
Moment Factory ファンなだけに大興奮。
全部Touchdesigner製で、今後unityとかUE5とかのコンテンツもアップデートしていく予定らしいです。
俺もここで仕事したいな~~
Mutek WorkShop
9:30 ~ 17:00というなんとも長い時間でしたが、Touchdesignerをこんなにも学ぼうとしてる人がいてめっちゃ嬉しかった。
国籍関係なく色んな人が集まるワークショップいいなとおもったしだいです
ほな皆様またどこかで会いましょう!
Discussion
I would like to make a correction.
The expression should be
Thanks for joining the workshop!
Thanks!!
That was a really interesting topic!