『TouchDesigner』でGPUを使える手段はてっきりGLSLだけかと思っていたのですが、
色々調べるとどうやら『ジオメトリインスタンス』なる機能を使うことで、
『GPU処理』ができるようです。
GPU・・Graphics Processing Units・・CPUの映像特化版
『ジオメトリインスタンス』・・別名『インスタンシング』。
『ジオメトリインスタンス(インスタンシング)』は『OpenGL』の機能で、
『ジオメトリ』のコピーをGPUに処理させることで、大量のオブジェクトをリアルタイムで実現できるようです。
『ジオメトリインスタンス(インスタンシング)』を使うと、頂点の数だけ『インスタンス』がつくれるようで、
例えば『Sphere SOP』->ポリゴン にすると、
頂点の数が40になり、こんな動きをさせることができるようになります。
TouchDesignerでGPUを使う方法 ジオメトリインスタンスを試してみる
『Circle SOP』から『SOP to CHOP』をつなぎます。
別ラインで、『Box SOP』から『Geometory COMP』をつなぎます。
『Geometory COMP』->Instance->Instancingをonにします。
『Geometory COMP』 ->Instance CHOP/DAT/SOP の箇所に、
『SOP to CHOP』をドラッグドロップします。
『Geometory COMP』->Translate X, Y, Z にそれぞれ、 tx, ty, tz と入力します。
『SOP to CHOP』内に記載されているパラメータの値を入力することで、
『ジオメトリインスタンス(インスタンシング)』で使うチャネル名になるようです。
『Box SOP』->Scale などの値を変えることで、『Geometory COMP』の映像も変化します。
TouchDesignerでGPUを使う方法 配列に似た使い方
『ジオメトリインスタンス(インスタンシング)』の考え方は、
プログラミングでいうところの『配列』と似ているそうで、
『CHOP』や『Table DAT』を配列として使えるそうです。
関連記事
今回は『Circle SOP』を使ったのですが、
『Circle SOP』を右クリックしてinfoを見ると、
頂点の数(pointsの数)が40というのがわかります。
『ジオメトリインスタンス(インスタンシング)』で生成された『box』の数も40なので、
頂点の数の分だけ『インスタンス』が生成されたということかなと思います。
Pointが頂点で、Vertexは頂点を結ぶ情報のようです。
参考元:SOP Workshop @TouchDesigner Study Weekend vol.010
『Circle SOP』に『SOP to DAT』を紐づけることで、
各頂点の情報を見ることもできます。
また、ためしに『Sphere SOP』で試したところ、頂点が722もありました。
ポリゴンにして42です。
ポリゴンの方が使う機会多いようです。
TouchDesignerでGPUを使う方法 まとめ
『Geometory COMP』の機能、『ジオメトリインスタンス(インスタンシング)』を使うことで、
頂点の数だけざーっとインスタンスが作成できることがわかりました。
しかも『GPU』で動くということで、
ようやく『TouchDesigner』らしさをちょっとだけ知れたような気がします。
2019/7/19 追記
こちらの記事によると、『TOP』の多くは『GPU』に最適化されているそうです。TouchDesingerすごい。
TouchDesignerの場合、TOP系のノードが既にGPUに最適化されているため、他のものを制作せずとも良い感じにParticleをいい感じに飛ばせます。
参考元:TouchDesignerでGPGPU Particle Systemを作る Vol.1 基本編
『TouchDesigner』関係ではこんな記事も読まれています。
1. 【GLSL】プログラムでかっこいい映像をつくりたい! 〜『TouchDesigner』を見据えて2. 【TouchDesigner】で『GLSL』を使う方法まとめ【画像あり】
3. 【TouchDesigner】『GLSL MAT』の使い方 3次元でぐりぐり動かしてみる
4. 【TouchDesigner】GPUを使う方法の一つ ジオメトリインスタンス
5. GPGPUパーティクルシステムを試してみた【TouchDesigner】
6. 【TouchDesigner】パーティクルの出し方をまとめてみる
7. 【TouchDesigner】で『GLSL』を使う方法を動画で学んでみる その1
アオキのツイッターアカウント。
この記事へのコメントはありません。