TouchDesignerについて色々聞いてみた@1-10Academy

P4240384_2

 

 

久しぶりの更新になってしまいました。

1-10ではインスタレーション制作にUnity、openFrameworks、Unreal Engineなどを利用していますが、

最近この界隈で『TouchDesigner(タッチデザイナ)』という名前を聞くようになってきました。

TouchDesignerはDerivative社という会社が制作しているリアルタイムレンダリングをベースにした、ノードベースのヴィジュアルプログラミング開発環境です。

ノードとは、プログラムが小さなモジュールになっていて、モジュール同士をつないでプログラムを作る言語のことです。

この業界だとMax/MSP、PureData、vvvvなどがノードベースプログラミングとしてはメジャーでしょうか。

少し前ですが話題になったBOXもプロジェクションのクレジットにTouchDesignerの名前が掲載されています。

 

Box

しかしこのTouchDesigner、なかなか日本語の情報がありません。

今回、Derivative社のエンジニアでTouchDesignerのR&Dを担当されているBen Voigtさんにお話を聞く機会ができたのでオープンなトークセッションを企画し、『TouchDesignerとは?』『Derivative社とは?』といったTouchDesignerを触る前に知りたい事を聞く事ができました。

以下、聞いたお話の要約です。

 

1. Ben Voigtさんについて:
カナダのトロント生まれ。トロント大でコンピュータサイエンスを専攻。
学生時代からコンピュータグラフィックに興味を持ち、Derivative社にてインターン開始。
卒業後、Derivative社に就職。現在12年目。

2. Derivative社について:
3人ファウンダが居るが、そのうちの1人、Greg Hermanovicがビジョナリーでもあり、支柱な感じ。
Gregは1980年ごろにモジュラーシンセでライブをしてた。その頃から音楽と合わせて映像も生成したかった。
1985年、初のCGソフトPRISMSを制作。ハリウッドなどに納品。シリコングラフィックス社のワークステーションで動作するもの。
この頃からノード式(ノード式なのはモジュラーシンセとインターフェースが似てるから)。
その後、Houdiniを発売し、ハリウッドの映像系のデファクトスタンダードになった。
が、GregはHoudiniなどのレンダリングの必要なソフトだけでなく、モジュラーシンセのようにリアルタイムに映像を生成したい、
ということで最初の目標をもう一度目指すため、Derivative社を設立し、touchdesignerを開発した。
現在Derivative社には正社員が7人。後はパートとインターン入れて10人。
会社はトロント。
社員構成はボス1人、エンジニア3人、デザイナ3人。

3. Benさんの仕事内容について
仕事の割合としては65%がTouchDesignerのR&D(研究開発)。
35%がテクニカルディレクタ、テクニカルサポートとしてのクライアントワーク。
クライアントワークと言っても直接エンドクライアントにアサインされる場合もあれば、
間接的に関わる場合もある。

3-1.voderfoneの場合:

前者は1-10で言うところの直クライアント的な関わり方、後者はTouchDesigner利用者や、もっと曖昧な話を受けてのアサイン(お金をもらってやるめっちゃ広範囲のテクニカルサポートみたいなポジション)。
後者で言うとkinetic lights( http://www.kinetic-lights.com )の制作会社。
プロダクトを作るつもりだが制御アプリが欲しい、という話になりDerivative社に相談し、lightの位置や数をUIで変更可能なアプリケーションをTouchDesignerを用いて制作し、リリース。
現在も更新、アップグレードをしている( https://www.derivative.ca/Events/2015/KineticLights/ )。

 

kinetic lights

3-2.最近の案件:
直近はVR関連への対応が多い。VR用のパッチをデフォルトでサポートしてる。
最近の事例は「Hello Play」というミュージックビデオ。
これはそれぞれの人間の映像を撮影し、TouchDesigner上でVR空間上に配置し、リアルタイムで360度ムービーを作成してる。

 

Hello Play – The Future of Music

 

4.今後のDerivative社とTouchDesignerについて:

  • 直近はVRに注力している。少し前までプロジェクションマッピングの話が多かったが、今はVR。現在、HMDを脱がずとも開発が進められるようなインターフェースを検討している。
  • 会社としては『コミュニティの活性化と教育』に注力している
  • OSX版も出す予定がある (実際にイベント中に起動して見せていた)。

5. 森岡的まとめ

5-1.Derivative社の仕事の流れ:
1-10とは大きく異なる。ハリウッドという映像業界のトップ業界からの依頼のパターンと、すごく大きな意味でのカスタマーサポート(kinetic lightsなど)の2パターンで、どちらも1-10(というか国内)ではほとんどないパターンの仕事の流れ。
コンテンツ制作というよりもクリエイティブツールを作る、というポジションを確保している様子。
リッチー・ホゥティンやアモン・トビンなど、大手クリエイターから直接依頼される場合や、クリエイティブに理解のある会社からアサイン要望がある場合が多い。

 

 

Plastikman Live @ DEMF, Detroit 2010. Derivative Visuals

 

AMON TOBIN | ISAM PERFORMANCE

 

5-2.制作ツールとしてのTouchDesigner

5-2-1.カスタムUIツールを作りやすい:

Derivative社に特集ページがあります。
コントローラがデフォルトである+マルチウィンドウアプリケーションに対応しているので外出ししやすい。
大手のクリエイター、DJイベントでのTouchDesigner事例は大体カスタムコントローラ画面がある。
現場対応やADがカスタマイズしやすく、そこが買われている場合も多い。

 

5-2-2.ムービー再生機能が強い:
基本的にopenFrameworksやUnityとは喧嘩するわけではなく、シチュエーションによって使い分けてもらえれば、という感じだがあえて言うならBenさん曰く、『ムービー再生における負荷がかなり低いとのこと(映像の再生、逆再生、頭出しなど全般)はopenFrameworksやUnityに比べると有利な点では』、とのこと。

 

Multimedia Renaissance by Front Pictures

(50台以上のプロジェクターを1台のPCでコントロールしている事例)

5-2-3.メイン言語がPython:
touchdesginerでのメインスクリプトはPythonです。
以前はオリジナルのスクリプト言語だったのですが、変更になってます。
Pythonはwebのエンジニアでも馴染み深い言語ですが、Zbrush、Blenderなどでも採用されるなど、CG業界でも最もシェアの多いスクリプト言語となっています。

 

5-2-4.CUDAを標準サポート:
NVIDIAのグラフィックカード専用のGPU言語、CUDAをサポートしている。
CUDAは汎用GPU言語のOpenCLに比べると書きやすいこと、バグの少ないことなどから機械学習業界でもよく使われている。
以前有名になったInteractive Fountain Mapping(流体シミュレーション+マッピング+Leapmotion)はCUDAを使って流体シミュレーションを走らせてる。
これもPCは1台のみとのこと。
TouchDesignerはSLIをサポートしておらず、GPUを複数利用する場合はshared memoryなどを利用して複数のTouchDesignerアプリケーションを同期させる場合が多いとのこと。

 

Interactive Fountain Mapping

 

5-2-5.安定動作:
入場料を取るインスタレーションやライブイベントで採用されるだけあり、非常に安定して動作する様子。

5-2-6.コミュニティ(make with others):
オフィシャルのForumでtox(プラグイン的なもの)のシェアなどが行なわれているが、それ以上にDerivative社自体がクリエイターのテクニカルサポートに積極的なところが大きい。

5-2-7.デザイナが触れるプログラミング環境:
ノード式で、しかも制作環境のビジュアルをかなりリッチに作っているため、TouchDesignerに触り慣れていればデザイナでもプログラムが操作しやすい。
1-10でコンテンツ制作する場合、ADがメインビジュアルを作った後、実装メンバが実装するが、最後にADに実装の都合で微妙に変更が入った部分や、現場合わせの微調整のために予め外出し(GUIなどに出して、スライダやボタンを用意してプログラムを操作しやすくすること)するパラメータやファイルを検討しておく必要がある。
この部分をTouchDesignerに慣れたADと実装者のペアの場合、コードの段階で外出しすべきパラメータをADと相談できるワークフローが組める可能性が高い。
要するにADと実装者がより綿密に連携が取れる可能性がある。
コードベースで書く必要がある場合、CUDA、C++、Pythonの3つから選べるが基本的にはPythonで事足りる。

5-2-8.デメリット:
商用利用は基本有料(ただし、非商用利用は画面サイズに制限がかかる以外は無料)。
開発環境は599ドルと2,200ドル。
ランタイム的なもの(開発はできないが動かせる)がライセンス制で有料。300ドルと1,100ドル。
2,200ドルのものは動画周り、出力の機能(TouchDesignerを複数立ち上げられるとか、SDIでの映像出力とか)とカスタマーサービス(致命的なTouchDesignerのバグがあった場合に緊急対応してくれるなど)。
また、ディスクリートGPU、特にNVIDIA社のGPUがないと動作が厳しい。
あとWindows版しかないのも少し残念なところ。OSX版は現在開発中とのこと。

 

いかがでしょうか。
個人的にはデザイナでもギリギリ触れそうなインターフェースな点、CUDAをサポートしている点が熱いです。
今回の件をきっかけにTouchDesignerのコマーシャルライセンスを購入したので、時間を見つけて勉強して、チュートリアルなども機会があれば投稿していこうと思います。

non commercial版はDerivative社からダウンロードして利用できるので、是非DLして触ってみてください!

forumwikiも充実しています。

日本語だと松山さんのチュートリアル日本語版pdfがあるのでそちらで勉強できると思います。
森岡は日本語のチュートリアルの存在を知らなかったので、Matthew RaganさんのYoutubeチャンネルブログを参考に勉強しました。


related article