挨拶
WOW inc.でプログラマーをしています。
落合陽一×日本フィルハーモニー交響楽団プロジェクト VOL.7《帰納する音楽会》のシステムの開発などで小ワザ的な知見が貯まったので共有します!
1. Performモード時のウィンドウの名前を変更
複数のTDプロジェクトを立ち上げてPerformモードで運用している時に役立ちます。
刻みTDまでいかないにしても、複数のプロジェクトファイルを立ち上げてタイトルバーが全部/perform
だとわかりにくい時があると思います。
追記 2023/11/1
以下のことをしなくても、Window COMP
のTitle
というパラメータにつけたい名前を入力するとタイトルバーの名前を変更できました。
追記終わり
TDファイルの一番上の階層にあるWindow COMP
の名前をperfom
から変更します。この状態でF1
を押してPerformモードにしようとするとエラーが出るので、
左上のDialog -> Window Placement
を開いて、Path
が変更後の名前になっていればF1
を押してもエラーが出なくなります。
また、プロジェクト内に他のWindow COMP
があれば、Performモードで開くWindow COMP
を選択できます。
2. パラメータのexperession小ワザ集
2-1. File Suffix
連番png書き出しなどで、自動でナンバリングしながらファイル保存したい時に役立ちます。
Movie File Out TOP
のデフォルトのme.fileSuffix
より自由が効くようになります。
詳しくは【TouchDesignerドキュメント:moviefileoutTOP Class】へ。
File
パラメータのexpression
に
'Path/name_take' + str(me.writeCount) + '_frame' + str(me.curSeqIndex).zfill(5) + '.' + str(me.par.imagefiletype)
Path/name_take0_frame00000.png
, Path/name_take0_frame00001.png
, …と書き出されていきます。me.writeCount
のとこには、書き出しのテイク数が入ります。
Path
で指定しているフォルダがないと保存されないので気をつけてください。
2-2. digits系
Replicatorとかで番号に合わせてパラメータを変化させたい時に役立ちます。
me.digits
, parent().digits
はよく使うと思います。
例えばcam1_xx_yy
の1
を取り出す場合は、me.name.split('_')[0:][0][3]
とすると良いでしょう。
詳しくは【Pythonドキュメント:str.split】へ。
3. OP Find DATでオペレーターの位置を参照してソートする
SceneChangerで切り替えたいCOMP
を集めるとか、並び順が大事な時に役立ちます。
Palette -> UI -> Basic Widgets
のbuttonRadio
のLayout/Align Order
に潜んでいたりするのですが、TouchDesignerのオペレーターはネットワークエディタ上の位置情報を持っています。
詳しくは【TouchDesignerドキュメント:OP Class / Appearance】へ。
このnodeX
, nodeY
を使います。
OP Find DAT
にソートしたいパラメータの追加方法は、コールバック内に簡単に説明が書いてあります。
詳しくは【TouchDesignerドキュメント:opfindDAT Class】へ。
Y座標でソートしたい場合、コールバックに以下のように記入し、
def onInitGetColumnNames(dat):
return ['nodeY']
def onFindOPGetValues(dat, curOp, row):
return [curOp.nodeY]
4. Select DATで文字入ってるセルだけ取得
Select DAT
で文字入ってるセルだけ取得したい時に役立ちます。
Select DAT
のSelect Rows/Cols
でby Values
を選択し、*?
とします。
詳しくは【TouchDesignerドキュメント:Pattern Matching】へ。
5. 超便利なSearch機能
「これどこで参照してるっけ…?」てなった時に役立ちます。
限られた時間で組み上げたシステムの階層が深く複雑になればなるほど、依存関係がコントロールできなくなることがあると思います。
パラメータのexpressionでも、DATに書いたコードでも、オペレータの名前でも検索結果に表示してくれます。
ショートカットはF3
。
詳しくは【TouchDesignerドキュメント:SearchReplace Dialog】へ。
結び
以上です!