【箱うし本】STAGE 3-2 ボーンにIKを設定してみる
LESSON-15、キャラクターのボーンにIK設定を行う
今回はIK(インバースキネマティクス)を扱います。
この人、狐じゃなくて犬だったみたい。
左脚にIKを設定する
左足(左足首のボーン)の位置や回転を変えることで、脚の2本のボーンが自動的に動くようにします。
下準備として、足首関節の接続を切り離しました。
これは、子が親を動かすという状況になるのを防ぐためです。もし親子関係のままIKを設定すると、足首を移動することができなくなります。
だそうです。つまり…?
今回は足首ボーンの動きによって脚ボーンが動くようにIKを設定する。だから親子関係を切らないと、子が親を動かすようになってしまうのでNG。ということか。
続いて脚のボーン、すねの方にIKを追加する。
プロパティウィンドウに[ボーンコンストレイント]タブがあり、ここに[インバースキネマティクス(IK)]を追加する。メニューを見るとたくさんのボーンコンストレイントが並んでいる、いろんなボーンの使い方、制御ができそう。「Limit Scale」というのも見えるので、これを使えば前回自分が気にしてた「ボーンの可動範囲を制限する」こともできるのでは。
IKの設定はそのままプロパティウィンドウでできる。IKの「ターゲット」(オブジェクト)にArmature、「ボーン」(実際にターゲットになるボーンのこと?)を選択。
「チェーンの長さ」を2にした。
チェーンの長さによって、IKでコントロールされるボーンの数が変わるみたい。
いくつ親のボーンまでコントロールするのか、ということで、今回の場合はIKを設定したすねボーンから数えて、2つ目の腿ボーンまでということになる。
ちなみに初期値の0だと、何も動かないのではなくつながってるすべてのボーンが動いた。
ここまで設定したIKの動作を確認してみる。足首ボーンを動かしただけで脚全体が動くようになった。
ポールターゲットを追加する
さらに、膝の向きもIKで指定できるように、ポールターゲットというものを作る。
膝関節からまっすぐ前方を向けた新しいボーンを作る。ポールターゲット用のボーンは足首ボーンとセットで動くようにしたいので、足首ボーンを親としてペアレントしておく。
ボーンを追加したら、すねボーンのIKのプロパティに戻って設定をする。
IKの「ポールターゲット」とその「ボーン」に、Armatureとポールターゲット用に作ったボーンを指定する。
ここで意図しない方向に関節が折れてしまうときは、「ポールの角度」の数値を調整する。
これで、ポールターゲットにしたボーンを動かすことで、IKによって曲がった関節(膝)の向く方向を動かすことができるようになった。
右脚も同様に設定する
ここまでの作業を右脚にも行って、脚のIK設定は完了。2つのボーンを動かしただけで脚全体のポージングができるようになった。
IKさん……なかなかやるなあ……。
カスタムオブジェクトを設定する
IKのターゲットとした足首のボーンが、小さくてちょっと選択しづらいよね。
ということで、ボーンの見た目を変える方法があるらしい。
ボーンの代わりに表示するためのオブジェクトをシーンに追加する。
今回はデフォルトのキューブの、面のみ削除した状態のものを作った。名前をわかりやすいように付けておくとよし。ここまでできたら、残りの設定はボーン側のプロパティで行う。
足首のボーンを選択して、[ボーンプロパティ]-[ビューポート表示]から、カスタムオブフェクトにさっき作ったキューブを指定することで、ビュー上ではボーンがキューブに置き換わる。
カスタムオブジェクトの大きさは設定次第で、デフォルトの設定だと元のボーンに合わせた大きさになるみたい。