今回はスライダーの作り方の続きで、トラックパッドコントローラーの作り方について書いてみたいと思います。
スライダーはY軸のみ使用しましたが、トラックパッドコントローラーはXYの2軸を使用します。作り方は基本的に同じです。違いがあるとすれば、平面の位置にどのように値をマッピングするか?という部分を少し考える必要があります。
顔などのモーフマップを制御することを想定して、値のマッピングのしかたをいくつか紹介してみたいと思います。スライダーのときと同じで、トラックパッドの平面のサイズは1m (-500mm~500mm) の範囲を制御領域としています。
Clampノードやチャンネルのロックなどの説明は省くので、Clampは何に使ってるの?という方は前回のスライダーの作り方を参照してみてください。
2モーフを制御する方法
上下の位置で2つのモーフマップを制御する方法です。単純に上下2つのモーフならスライダーでもできますが、左右の位置をMorph InfluenceのFalloffの制御に使用してみました。
これは目のまばたきのような左右対称のモーフで使用することを想定したマッピングです。
一般的に目のモーフを作成する場合は「両目閉じ」のモーフを1つ作り、そこから「左目閉じ」「右目閉じ」と複数のモーフに派生させると思います。modoのデフォーマはFalloffを使用して変形する範囲を制御できるので、両目閉じのモーフ1つあれば「左目閉じ」「右目閉じ」のモーフを作らなくていいかもしれません。
モーフマップは以下のような2種類です。
マッピングのイメージは以下の通りです。
グラデーションはモーフマップの数と、モーフインフルエンスの「強さ」の段階をイメージしています。
アセンブリの中身は以下の通りです。グラフはChannel Relationshipの設定です。
コントローラーの「位置Y」をChannel Relationshipを使用して Morph Influence の「強さ」に出力しています。
「位置X」を使用してFalloffの方向を指定しています。画像では条件式ノードの「A は B より大きい」を使い、「位置X」が0より大きい場合は「出力True値」として「90」、0より小さい場合は「出力False値」として「-90」を出力します。この出力をFalloffの「回転Y」にリンクすることでモーフの領域を左右どちらかに制限しています。画像ではわかりやすくFalloffのサイズを大きめに設定していますが、小さく設定すればキッチリ左右でモーフをわけることができます。
「アセンブリ出力」するチャンネルには、ユーザーチャンネルを経由したものを使用しています。
4モーフを制御する 1
左右の位置、上下の位置で4つのモーフマップを制御する方法です。
比較的単純なマッピング方法で、隣り合う2つのモーフマップを制御できます。目のウインクと同時に、口元や頬のモーフを制御するような使い方でしょうか。
モーフマップは以下のような4種類です。
マッピングのイメージは以下の通りです。
アセンブリの中身は以下の通りです。
XYの2軸ですが特別な設定はなく、ほぼスライダーと同じ感じで作れると思います。
Channel Relationshipの出力先が少しこんがらがるかも知れませんが、1つずつ確認すれば難しくないと思います。これもアセンブリ出力にユーザーチャンネルを経由させています。
4モーフを制御する 2
左右上下の4つの象限それぞれ独立してモーフマップを制御する方法です。象限ごとに出力値が独立しているので、モーフ以外にも色々使える気がします。
マッピングのイメージは以下の通りです。
アセンブリの中身は以下の通りです。
各象限ごとにX軸とY軸用のChannel Relationshipを用意し、出力値をかけた値をモーフインフルエンスに出力しています。位置はChannel Relationshipを使用することで0~1の範囲にリマッピングされているので、X軸とY軸の出力値ををかけることでコントローラーがいる象限の値のみが出力されます。
個人的にこの制御方法を一番作りたかったのですが、どう計算すればいいのかわからなくてしばらく悩んでました。完成してみると凄く単純ですね。
この記事ではChannel RelationShipを使用していますが、Expressionノードや演算ノードの組み合わせでも同じ事ができると思います。好みに合った方法を選択するといいと思います。
また、今回紹介した制御方法は1軸ごとに1モーフのような単純な物です。コントローラーが便利になるのは複数のモーフマップをミックスして制御するときだと思います。たとえば目のまばたきの中間状態を制御したり、眉毛の移動に合わせて額のシワを制御したりという感じです。
おまけ
複数のモーフマップをどのようにすれば自由自在に制御できるのか?というマニアックな電子書籍「The Art of Moving Points」を紹介しておきます。
国内の制作事例を見ると最終的な表情のモーフがずらり並んでる事が多いですが、決め打ちではなく汎用的に使用できるモーフとは?みたいな内容です。
フェイシャルリグで参考になりそうな記事へのリンクも貼っておきます。1つのコントローラーで複数のパラメータを同時に制御することで、とてもリアルなフェイシャルを表現している気がします。