MODO 機能紹介・チップスサイト このサイトでは、MODOの基本機能やチップスをご紹介していきます。

ACSキット+パスアニメーションを併用するには

http://www.youtube.com/watch?v=qkbcb6PXxF4&hd=1

modoにはキャラクタアニメーションのセットアップを行うための便利なAuto Character Setup(ACS)キットがありますが、このACSキットでリグが組み込まれたキャラクタでパスアニメーションを行おうとすると、うまくいかない場合があります。今回は、このACSキットでリグが組み込まれたキャラクタを、パスコンストレイントの機能を利用して、パスアニメーションを行う方法をご紹介します。

パスコンストレイント用のカーブを作成し、このACSキャラクタを移動させるマスターとなるコントローラを選択したら、作成したカーブを複数選択し、モディファイヤタブにあるパスボタンをクリックすると、キャラクタの変形がぐちゃぐちゃになってしまってしまい、うまくパスアニメーションできません。

なぜこのように変形が崩れてしまうかというと、キャラクタアニメーションを行う場合、キャラクタは最初にセットアップモードにおいてそのリグの静止状態を記録するのですが、パスコンストレイントが適用されている場合、そのセットアップモードで既にキャラクタの位置がずれてしまうため、正しい静止状態を保つことができません。このため、セットアップモードではパスコンストレイントの影響を受けず、セットアップモードを抜けてアニメーションを設定する際に始めてパスコンストレイントの影響を受けるよう、セットアップし直す必要があります。

まずアイテムリストからパスコンストレイントを適用しているアイテム、この場合はマスターとなるコントローラと、カーブのメッシュをスケマティックビューへとドラッグアンドドロップします。ノードを広げて確認してみると、パスコンストレイントノード位置回転の出力が、そのままコントローラの位置回転の入力へと接続されていますので、追加メニューのチャンネルモディファイヤ > 行列からマトリックス:ブレンドノードを追加します。このノードは入力したノードの影響度合いをコントロールするノードです。現在、パスコンストレイントの位置出力がコントローラのワールド位置へと接続されていますので、この接続を解除したら、位置出力マトリックス:ブレンドノードのマトリックスAへ、さらにブレンドノードのマトリックス出力をコントローラのワールド位置へと接続します。

回転に対しても同様に、マトリックス:ブレンドノードを追加し、パスコンストレントの回転出力を二番目のブレンドノードのマトリックスAへ、さらにマトリックス出力をコントローラのノードのワールド回転へと出力します。

ではセットアップモードへと切り替えましょう。この時点では、先ほどと同じように変形が崩れていますが、ここでブレンドノードのプロパティ、ブレンドの値を調整します。このノードのブレンドの値が0%の時には、入力されている情報がそのまま出力されることになります。セットアップモードのときには、入力されているパスコンストレインの影響をなくしてしまいたいので、この二つのブレンドノードを選択し、ブレンドの値を100%へと変更します。これでパスコンストレイントの影響は全くなくなりました。次にセットアップモードを抜け、今度はパスコンストレイントの影響を受けるように、ブレンドの値を0%へと変更します。

セットアップモードがオンのとき、オフのときには、それぞれに対する設定値が維持することができますので、それぞれのブレンドの設定値が維持されるようになります。

これで、ACSキャラクタは正常にパスアニメーションにそって移動するようになったのが確認できます。

今回ご紹介した回避方法は、ACSキット特有のものではなく、リグをくんだモデルにパスコンストレイントを適用した際にセットアップモードの位置が変わってしまう場合には共通して使えますので、変形がうまくいかないような場合にはこの方法を試してみてください。

また基本的なキャラクタアニメーションの設定やACSキットを用いたリグの組み方などに関しては、トレーニングマテリアル「modoキャラクタアニメーション」の中でご紹介しておりますので、ぜひそちらもご覧ください。

2013年12月16日