アニメーションターゲット
アニメーションターゲットの設定は、キャラクターセットアップサービスの一環として弊社で行います。ただし、SGX Studioを使用して、ユーザー側で編集可能です。
まず最初に、ソフトウェア上でコントロールするリグのパラメータを選択してください。このパラメータが、アニメーションターゲットです。基本的には、パラメータのリストをキャラクターセットアップサービスに共有していただくことになります。
Mayaのリグの場合、アニメーションターゲットは、以下のようなシーンノードのアトリビュートになります。
ブレンドシェイプノードのウェイト
ジョイントなどのトランスフォームノードの移動、回転、スケールの各アトリビュート
ノード全般のカスタムアトリビュート
したがって、ブレンドシェイプでも、ボーン/ジョイントでも、より高いレベルのアニメーター用UIハンドルでも、あるいはこれらを組み合わせて使用している場合でも、アニメーションターゲットはあらゆるリギングに対応できます。
アニメーションターゲットを設定したら、キャラクターのニュートラルポーズとマッスルポーズを定義する作業に移ります。
リファレンスポーズ
アニメーションターゲットは、キャラクターがリファレンスポーズになっている間に選択します。リファレンスポーズとは、キャラクターのデフォルトのポーズです。アニメーションターゲットのリファレンスポーズの値は、アニメーションターゲットを選択したタイミングでキャラクターコントロールファイルに記録されます。リファレンスポーズは、マッスル定義の変位を決めるのに役立ち、かつ絶対的なアニメーションの基盤となるため、適切なポーズにするようにしましょう。
トランスフォーム
ボーンなどのトランスフォームでは、次の9つのアトリビュートをターゲットに設定できます。
translation x
translation y
translation z
rotation x
rotation y
rotation z
scale x
scale y
scale z
上記の9つのアトリビュートの中からいくつかを選択します。ただし、指定したターゲットにrotationとscaleのアトリビュートが1つでも含まれている場合、最終的なターゲットセットには9つ全部が含まれることになります。
アニメーションターゲットに対する変更
リグのアニメーションターゲットの変形効果に変更を加えると(ボーンのスキニングの変更など)、マッスルポーズやニュートラルポーズの調整が必要になる場合があります。
また、アニメーションターゲットの名前を変更すると、そのターゲットが見つからなくなるため、名前を変更したターゲットを使用するマッスルが正常に動かなくなる可能性があります。名前の変更が生じた場合は、SGX Studioでアニメーションターゲットのマッピングをやり直してください。サポート担当側で変更作業を行うことも可能ですので、その場合はお問い合わせください。
同様に、キャラクターが設定されたリグと、アニメーションが適用されているリグの間でアニメーションターゲットに矛盾がある場合、該当のターゲットを使用しているマッスルのアニメーションで問題が発生するおそれがあります。目的に応じて複数のバージョンのリグを運用する場合は、サポート担当までお問い合わせください。
アニメーションレベル
アニメーターにとって使いやすいインターフェイスを持つ複雑なリグでは、高レベルUIコントロールと低レベルコントロールという2つのレベルのターゲットが存在する場合があります(ボーンやブレンドシェイプなど)。その場合、低レベルコントロールは高レベルUIコントロールによって動きます。SGXでは、この2つのターゲットセットのことをそれぞれControlレベル、Bakedレベルと呼び、この2つをまとめてアニメーションレベルと呼んでいます。Bakedレベルのアニメーションターゲットは、Controlレベルからの情報のフローを通じて値を受け取ります。一般的なユースケースとしては、Controlレベルはマッスルポーズを手動で設定するのに適しているのに対して、Bakedレベルはゲームエンジンでのアニメーションに使用します。
SGXでは、アニメーションターゲットを2セット選択するだけで、同一のキャラクターコントロールファイルでどちらのアニメーションレベルも定義できます。その後、Controlレベルで定義したマッスルポーズがBakedレベルで自動的に再作成されます(マッスルのベイク)。
