感覚的に作るには

## なぜこのテーマを選んだのか

あまりTouchDesignerのアドベントカレンダーっぽくないテーマの記事になってしまいましたが、なぜこのテーマを選んだかというと、数年前に[大学の非常勤講師としてTouchDesignerを教えていた](http://satoruhiga.com/TDWS2018/)ことがありました。

その時は、「初学者が作品制作においてTouchDesignerを使って一通りのものが作れる」という所をゴールとして据えており、必然的に授業の内容も○○のやり方～ 等といった基礎的なことが中心でした。

今年度に入って非常勤講師自体はお休みさせてもらって、[細々とやっている会社](https://backspace.tokyo/)にも[新人さん](https://twitter.com/motoishmz/status/1267256232164769792)が入り、[こじんまりした勉強会](https://note.com/komakinex/m/m22e34af1a716)をしたりしてある程度の力量を持った人にアドバイスすることが増えた年でした。

そうなってみて、細かいテクニカルなことより、どっちかというともっと概念的なことを書いてもいいのかもな～と思ったのがキッカケです。

やや根本的な話や根性論になってしまうかもしれませんが、、どうぞおつきあいくださいませ…

## どうやって感覚的に作っていくのか

そもそも、**TouchDesignerは直感的なインターフェイスを備えているとはいえ、本質的にはプログラミング環境です。全然感覚的ではないはずです。**じゃあどうやって感覚的に作れるようになるのでしょうか…

これまでの人生をふりかえってみると感覚的でないものを習得するには大きく分けて2つのやり方があるのかなと感じました

1. **反復練習**: 運動や楽器、たぶん語学もこれだと思います
2. **語呂あわせ**: 年号や元素周期なんかはこれなんじゃないでしょうか

TouchDesignerにおいても、上記の2つを使うとパラメーターをいじった時の挙動や、よく使うネットワークの繋ぎ方などが**深く考えず、思考を止めずに**にできるようになるはずです。

反復練習については特に言うこともないので (各自頑張ってください！) 語呂あわせについて説明していきます

## パラメーター変化のふるまいに擬音語をあてる

感覚的に作るにあたって重要なポイントが1つありまして、なるべく **いじっておいしいパラメーターを覚えておく** というのがあります。全てのパラメーターの仕様を理解したからといって感覚的に作れるのか…？というとそうではないはずです。

チュートリアルをやったり、自分で考えてネットワークを組んでいるうちにこのパラメーター動かすと面白い！！！という発見をしたことがみなさんきっとあると思います。これはそういう時に、そのパラメーターを動かした変化に対して擬音語をあてて覚えると便利、というやつです。

たとえば僕の中では `Lag CHOP` のLagパラメーターは「スイッ」とか「シュッ」とかいう音で、Overshootパラメーターは「ぼよん」とかになっています。(個人差あります)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/38051/5adfadc1-126e-2cfa-a2bd-1b0da2149096.png)

別に音はなんでもいいんですが、大事なのは音をあてることによって、自分の中で**このパラメーターを変えることによってどういう印象の変化を生むか、どういう雰囲気やキャラクターの変化をするか**、ということを言語化する点にあります。

ものによっては音があてられないものもあると思いますが、そういった時でも漠然とした雰囲気や印象、イメージで覚えていきましょう。

この印象変化と擬音語の関連付けは、言うなれば**自分が使える印象操作のボキャブラリー**です。一度覚えてしまえば必要な時に無意識にサッっと出せるし、ボキャブラリーが増えれば組み合わせることで色々なことができるようになります。

要はハードウェアのシンセサイザーなどで、**このツマミを動かすとなんか知らんけど勝手にいい感じになって最高！！**みたいな事が、ソフトウェアのパラメーターの中に見付けられればもはやそこに思考はいらないよね、ということです。

## 雰囲気、キャラクターについて

さきほど雰囲気やキャラクターという言葉が出ましたが、この非常に抽象な概念を客観的に把握できるようになるというのも、感覚的に作る上で重要な要素だと感じています。

雰囲気やキャラクターを構成する要素としては、

- 形状
- 動き
	- 手付け
	- 関数的な動き
		- 関数の種類
		- スピード
		- 周期
	- 物理的な動き
		- 初速
		- 重さ
		- 重力
		- 空気抵抗
		- 外力
- 質感
    - 色
    - ディテール
    - 反射
    - 発光
- 量感
    - 密度
    - コントラスト
- 構図
    - 世界との関連性
    - オブジェクト同士の関連性
    - 切り取り方

などなど… といった要素があるように思っています。これはもっと大雑把にも細分化もできると思いますが、**あるパラメーターを動かした時に、これら構成要素の何が変化したか、それによって受ける印象がどう変化したかを客観的に把握する** のが次のステップなのかなと思っています。

たとえば、**色を暖色系にしたらあたたかみが出た**、とか、**数を増やしたらゴチャついてどこ見ていいかわからんくなった**、といったものです。

この変化が自分の中で客観的に把握できるようになるとそのうち、「そうじゃなくてもっとあたたかみがあってホワホワした感じにしたい」と思ったときに、**自分の中のパラメーター編集ボキャブラリーの中から近いものを探してきて、アタリをつけたパラメーターを的確に編集**できるようになるはずです。

## 実寸で作る

これは3Dモデル制作などでもよく言われることですが、TouchDesignerで映像を作る時でも実寸から大きく離れないようにして作ることで大きさや配置を感覚的に決定できます。

たとえば、単純にパーティクルを大きさを決める時にも画面上の見た目で決めるのではなく、紙吹雪だから1.5cmぐらいのRectangleにしよう、とか、50cmのキューブをここに置こう、10m向うに2mぐらいの壁を立てるとよさそう、といったような思考で大きさを決められるので、画面上で大きさを決めるよりも作業が早くなります。

また、VRやARといった実寸ベースの体験システムにも調整なしで配置できるようになるので、そういった面でもオススメです

## オブジェクトや世界の個性

舞台芸術出身の人に多いように思うのですが、何かのデバイスや舞台装置のことを差して言うときに「あの人」と表現する事があります。

あれ割と好きでして、本来個性を持っていないはずのデバイスや大道具などに対して個性があると設定した上で関係しているんだなあ、という気になります。

また同じようなことで、物語を書く人が「登場人物が勝手に喋る」というような表現をすることがあります。登場人物の個性や癖、世界の設定などから自動的に次の展開が決定されていく、といった内容を差して言うものだと思いますが、これは物語に限ったことではなくて、TouchDesignerなどを使った映像制作に関しても適応できるのではないかと最近考えています。

例えば、このオブジェクト、今の動き方からもうちょっと違う方向性を出したい！と自分が思ったとして、その通り全てに自分が実装できたとしたら、残る問題は**このオブジェクトがどういった個性を持っていて、どういう世界で、何をしたがっているか？**という所になるのではないか？というかんじです。

なので逆に考えると、**オブジェクトや世界の個性を先に設定してあげると、それらがどういうにふるまえばいいか、そいつが次は何をするのか**、というものが玉突き的に決定されていくのではないか、というのが最近チャレンジしている作り方です。

## おわりに

プログラミング環境などといった、ものすごいロジカルな仕組みを使った制作スタイルだとどうしても感覚的という所から遠く、できる範囲や仕様の中で考えてしまいがちな所があります。

なんで非ロジカルな所から発想して、色々と頑張りながら**自分が何をしたいのか、又はこのオブジェクトや世界が何をしたがっているのか**ベースで発想を実現していく… という作り方、自分のスキルの限界と正面から向き合うという意味もあり、いいのではないかと思います

最後に、当初予定していたアニメーションの話についてのサンプルファイルだけ勿体ないので上げておきます。Log CHOPやNoise CHOPのパラメーターだけでも情緒的なアニメーション表現が色々できるよ！というものを書く予定でした。お時間あれば見て見てください！

https://drive.google.com/file/d/1yShVj4cuq2LgyGIZJNIOnVc8qiW3usrh/view?usp=sharing