CGキャラクターリギング入門:03 胴体のリギング

16 重心コントロールを追加する

通常、重心(COG)コントロールは、キャラクターを制御する主要なコントロールです。多くの場合、重心は腰に配置されます。しかし、実際の人間の重心はポーズやアクションに応じて変化します。例えば、腰を中心に両足を前後に開いたとき、重心は腰周りになります。しかし、でんぐり返しを想像してください。身体は球の形になり、この動きの重心は球の中心になるでしょう。

重心の変更を行うには、 COG コントロールのピボットを移動する機能が必要です。制作するアニメーションにこの機能が必要ないなら、追加する必要はありません(COG の場所を編集する効果を追加したいなら、カーブ、ロケータ、コンストレイントで実験してください)。

今回は、COG コントロールを作成しましょう。Comet > Shapes > arrowで矢印を作成、原点に配置されていることを確認、COG_ctrl にリネームします。コントロールを 2度グループ化して、階層を作成。上のグループノードを COG_ctrl_offset、下のノードを COG_ctrl_auto にリネームします。

正しい位置にセットするため、COG_ctrl_offset を spine_hip_ik_ctrl の下にペアレント化、[回転]と[移動]をゼロにして、ペアレント解除してください。コンポーネントモード([F8]キー)に切り替え、COG_ctrl の形を自由に編集しましょう。

図36:キャラクターの主要な操作を行うCOGコントロールを追加

17 腰のコントロールを追加する

現時点では、spine_hip_ik_ctrl で腰を移動できます。これで問題ありませんが、一部の背骨も反応しています。この動作は意図的なものですが、キャラクターを座らせるような動作を簡単に行うには、背骨に影響を与えずに腰が回転すると便利です。 新しいジョイントチェーンを作成して、その動作を実現しましょう。

側面ビューに切り替え、[ジョイント ツール]を選択。[V]キーを押したまま(ポイントスナップ)、spine_hip_ik_jnt のそばをクリックします(ジョイント自体をクリックしないでください)。spine_hip_ik_jnt の上にジョイントを追加、
[Shift]キーを押したまま、2 つめのジョイントを骨盤の下部に描きます。ルートと先端のジョイントをそれぞれ、hip_fk_jnt と hipEnd_fk_jnt にリネームします(図37)。

図37:腰のジョイントを追加、完全に独立した動きを実現します

次はジョイントの方向付けを行いましょう。hip_fk_jnt を選択、[スケルトン]>[ジョイントの方向付け](Skeleton > Orient Joint)オプションに進みます。[ 主軸]:Y、[ 補助軸]:Z、[補助軸のワールド方向]:Y(+)にセットします。

再び hip_fk_jnt を選択、createControls.pyスクリプト でコントロールを作成しましょう。スクリプトの最後の行を次のように編集します。

21 cmds.parentConstraint(ctrl, s, mo=0)

[回転]アトリビュートのみで hip_fk_jnt を操作しますが、[ペアレント]コンストレイントを適用しておけば、わずかな手間でリグの残りを接続できます。そして、胴体リグと下半身リグは独立した状態が維持されます(脚は後で追加します)。

すべてに満足できたら、hip_fk_ctrl_offset を選択、spine_hip_ik_ctrl の下にペアレント化してください。胴体と同じように、腰にもいくつかのジオメトリが追加。 コンポーネントモードに切り替え、腰のコントロールをアニメーターが選択しやすい形に変形しておきます。

図38:新しい腰のジョイントを操作するコントロールを追加

18 胴体リグの仕上げ

すべてのリグ要素をまとめて、[アウトライナ]もクリーンアップしましょう。spine_fk1_ctrl_offset と spine_hip_ik_ctrl_offset を選択、COG_ctrl の下にペアレント化します。

spine_fk1_ctrl を選択、[Ctrl]キーを押したまま、spine_fk_jnt を選択、[コンストレイント]>[ポイント](Constraint > Point)を実行します。これで、COGコントロールを移動すると、すべてが従うようになりました。

後で global_SRT_ctrl を追加するとき、胴体リグが壊れないように、spine_crv を選択、[アトリビュート エディタ]で[トランスフォームの継承]をオフにします(図39)。1番左のタブにあるこのオプションをオフにしないと、厄介なリグの二重変換が起こるので注意が必要です。

図39:先に進む前に、[アウトライナ]でリグをクリーンアップ

次は、COG_ctrl_offsetをtorso_ctrl_grp の下に、hip_fk_jnt を torso_jnt_grp の下にそれぞれ配置、階層を維持します。

[移動]と[スケール]アトリビュートはアニメーターに触ってほしくないので、ロックして非表示にしましょう。ビューポートで触って欲しくないリグパーツも同様です。まず、すべての FKコントロールを選択(胸郭コントロールも含めます)、[チャネル ボックス]で[移動]と[回転]アトリビュートをハイライトして右クリック、[選択項目のロック/非表示]を適用します(図40)。

図40:[選択項目のロック/非表示]は、アニメーターにキーをうってほしくないパラメータに有効です

次に、すべてのIKコントロールを選択、[スケール]アトリビュートで[選択項目のロック/ 非表示]を適用します。最後に spine_ik と spine_crv を選択、[可視性]アトリビュートをオフ、ロックします。

胴体部分のリグはこれで完成です。この後、首や頭の作業へと進みます。

図41:先に進む前に、リグをテストします

 

※本チュートリアルは、書籍『Maya キャラクタークリエーション』からの抜粋です。データ/ファイルは書籍付属データを使用しています。実際に作業を行い、より理解を深めたい方は、書籍の購入をご検討ください

■関連記事:【インタビュー】書籍『MAYA キャラクタークリエーション』の著者、Jahirul Amin氏


編集部からのおすすめ:キャラクターのリギングについて詳しく知りたい方には、書籍『Mayaリギング 改訂版』『3ds Max リギング』もおすすめします。

 


翻訳:STUDIO LIZZ
編集:3DTotal.jp