>   >  サンプルデータ付き! 馬など四つ足動物特有の逆関節リグ作成法(コロッサス)
サンプルデータ付き! 馬など四つ足動物特有の逆関節リグ作成法(コロッサス)

サンプルデータ付き! 馬など四つ足動物特有の逆関節リグ作成法(コロッサス)

<STEP 3>逆関節リグの作成手順

それでは実際に逆関節リグを作成していきましょう。SkinWeightが載る「Skin Joint」は「Control Joint」と1:1でコンストレイントされます。Control Jointには、IK handleやコントローラなどが付き、このジョイント階層を動かして、足のアニメーションを制御することになります。そして、「Aim Joint」には、ControlJoint「upLeg」がコンストレイントされます。Aim JointはupLegの自動制御に使います【A】。




Control JointとAim Jointは同じIKコントローラとPole Vectorコントローラをもっていて、Aim Jointの第1ジョイントがControl Jointの第1ジョイントを制御するFKコントローラのOrient Constraintの親になります。この構造によって、FKコントローラはIKコントローラが連動しながら、独立したアニメーションキーをもつことができるようになります【B】。完成したジョイントが【C】になります。


  •  


最後に、IK制御に付きものであるフリップを解消するためのTIPSを紹介します。一般的なIKリグでは、IKコントローラがIKが始まるジョイントとPole Vectorコントローラを結ぶ線を越えるとフリップが生じてしまいます【D】。



もちろんPole Vectorコントローラを移動させれば回避できる問題ではありますが、面倒ですよね? フリップが起きてしまう原因は、「IK handle」と足の進行方向が「Pole Vectorコントローラ」と同じ平面上に存在するためです【E】。

そこで、Pole Vectorの位置をその平面からずらせば解消されます。具体的には、Pole Vector用のLocatorの位置を「IK handle」の真横に配置して「IKのTwist」の値を元の姿勢になるように調節します【F】。今回はTwistに-90を入れると元の姿勢になりました。



その後、LocatorをIKコントローラの子にします。ですが、このままでは足だけをひねることができないため、「IKコントローラ」に「Knee Twist」というAttributeを追加してPole Vectorの親Groupノードの「Rotate Y」と繋げれば完成です【G】。激しいポーズをとらせてもフリップが起きないことが確認できます【H】。





いかがでしたか? 今回作成した逆関節リグのデータをコロッサス公式サイトからダウンロードできるようにしたので、ぜひご利用ください。

【サンプルファイルのダウンロード】
今回紹介した逆関節リグですが、コロッサス公式サイトから実データをダウンロード可能です(下記URLからダウンロード、解凍してください)。

cls-studio.co.jp/cgworld-vol-230

月刊誌に掲載した元記事の「ダイナミックコントロールリグの作成」(nClothを利用して作る、手付けアニメーションとシミュレーションが共存できる揺れ物リグの作成方法と、リグ作成の複雑な手順を自動化するためPythonスクリプトを紹介)のサンプルシーンファイルとPythonスクリプトもダウンロードできるのでぜひご利用ください。



info.

  • 月刊CGWORLD + digital video vol.229(2017年9月号)
    第1特集:劇場アニメ『機動戦士ガンダム THE ORIGIN 激突 ルウム会戦』
    第2特集:ワンランク上のキャラクターリギング

    定価:1,512円(税込)
    判型:A4ワイド
    総ページ数:144
    発売日:2017年9月8日
    ASIN:B074WTYF4P

特集