IK/FK Blendを活用する

AutomatonRigのIK/FKBlendを利用するとジャンプなどのモーションの接地感を向上させることが出来ます。

 IK/FKBlendサンプル ik_fk_blend.zip (113k)

 以下のサンプルは

  ik_fk_blend_1.lws IKのみのシーン

  ik_fk_blend_1.lws 接地時にIKを、空中にいる時にFKを使用したもの

 になっています。また、腕のモーションはポージング時にIKを動作時にはFKを利用することで滑らかに動かしています。

注意)

 ・シーンファイルにはIKBlenderAMEx.pを使用します。また、予めIKSlidHolder.lwoをコンテント ディレクトリへ移動してください(すでにある場合はコピーの必要はありません)。

 ・チュートリアルにはATIKtoFK.ls、ATFKtoIK.p、ATCopy/PastePose.ls、Load/SaveLocalRot.ls等のツールを使用します。

 

ジャンプなどのモーションの接地感を向上させる

1)まずIK/FKでAutomatonRigを生成します。

2)IKモードでモーションを作成します。
 モーションが完成したらシーンを一旦セーブします。(後でモーションの修正に使用します)

3)空中に浮かんでいる部分のIKをFKに焼き付けます(ATIKtoFK.lsを使用)。

4)空中の部分のIKControlからキーを削除します。

5)IKControlがオーバーランしないように、グラフエディタ上でキー補完を「直線」に変更します。

6)IK_1:Both_Legs_IKをコントロールし空中にいる間は0(FK制御)、接地したときに1に(IK制御) にします。

以下に完成したIK/FKBlendモーションとIKのみのモーションのFlashを示します。

 左がIK/FKBlend、右がIKのみのモーションです。

右のIKのみのシーンでは足のIKControlがオーバランしている為、ブレが生じています。

一方、左のIK/FKBlendを利用するものは、IKControlに足が吸い付くような感じになり、接地感を向上させることが出来ます。また、空中でのモーションをRootを動かすことで簡単に修正出来る為、迫力あるシーンが作れます。

 

FKの部分を修正する

 一旦、作成した空中のモーションはIKで制御出来なくなってしまいます。実際は可能ですが4,5,6を繰り返し作業することになり、とても面倒です。

 こんな時はLayoutをもう一つ立ち上げてIKモードで作成したモーションをLoadします。

 修正を加えた後、IKをFKに焼き付けます(ATIKtoFK.lsを使用)。このFK情報をSaveLocalRot.ls(Root以下)を使用してセーブします。

 このファイルを実際のシーンにLoadLocalRot.lsで読み込んでやればOKです。

 SaveLocalRot->LoadLocalRot 

このときATCopyPose/ATPastePoseを使用しないのはなぜでしょうか?これらを使用するとIKControllerが動いてしまいます。これでは、シーンでIKを使用するのと変わらなくなってしまいます。Save/LoadLocalRotを使えばFK情報のみ取得できるのではるかに簡単にポーズを移すことが出来ます。

 

スライダーを追加する

 

ツールAddSlider.lscを使うとAutomatonRigににスライダーコントローラーを追加することが可能です。(上図参照)

注意)このツールはキャラクタ1体の時のみ使用可能です。

 スライダの詳細についてはここを参照してください

スライダは初心者に判り易く状態を知るのには便利なんですが、ワンクリックで操作出来ない不便さも有ります。ある程度操作に慣れてきたらATIKCtrlを使用してください。

これで上記図の基本IK部分をワンクリックで修正することが出来ます。この機能はポーズ付けでIK<->FKを行き来するような場合に非常に有効です。

戻る