今回は基本的な IK を施したボーンに極ベクトルを付け加えて、ボーンの向きをコントロールする方法を載せてみました
極ベクトルは、ボーンの向きを制御するモノのことを指していると認識しています
IK だけではカバーしきれない動きを補助することができるので、結構重要な要素だと思います
LightWave には一発で、極ベクトルを付けることができる機能があります
それが「 Make Joint Chain 」というもの
ただ、通常のボーンに対しては使いづらく感じました

じゃっく
どのボーンを選択して実行すれば良いのか、分かりずらい
そう ちょっと個人的にクセ強なんです
そんな理由から一から作ることにしました
ひとまず正常に動くことが確認できたので、忘れないようメモっていきます
準備
基本的な IK を組む

まずは準備として、基本的な IK を付けたリグを用意します
以下、過去記事に沿って作成
もし、動かなかったら「 IK 有効」がオンになっていないはずなので、Shift+F8 で有効にします
手順
ではさっそく極ベクトルを付け加えていきます
手順は以下
流れとしてはまず、IK が始まっている太ももボーンを複製します
複製したら、名前とボーンの色と大きさを変更
同時に極ベクトルとして扱う Null を用意して、必要なら形状も変えておきます
複製したボーンのモーションオプションから、目標アイテムと極ベクトルアイテムを指定
あとは複製したボーンを太ももボーンの親になるように、親子付けの順番を変更すれば完成、といった流れです
IK の根元ボーンを複製する

始めに IK の始まりがある太もものボーンを複製します
ショートカットは Ctrl+C
複製すると強制的にかっこ付きの名前で生成されるので、これを変更します

複製したボーンを右クリックで
「操作」→「名称変更」
から名前を変更
とりあえず、leg_target_L としました
ボーンの色とサイズを変更する

分かりにくいので、もう少し手を加えます
ボーンの色と大きさを変更
骨のアイコンあたりでクリックすれば、色を変えることができます
このボーンの正式名称は不明ですが、名前が無いと困るので
ターゲットボーン
と勝手に呼ぶことにします
IK_Null を注視するボーンということで、この名にしました
ちなみに初見だと、このボーンを作る意味が分からず

じゃっく
なんで二重に入れているんだろう?
という感じでナゾでした
ただ、このボーンが無いと動作が不安定・・・というより、無いと本来の動きになりません
LightWave の場合、恐らくこのボーンは必須だと思います※おまけにターゲットボーンを作らなかった場合を載せています
極ベクトル用の Null を用意する

極ベクトルとして扱う Null を作成します
leg_IK_L を複製して、名前を leg_pole_L としました

極ベクトル Null の位置を調整します
一旦、太ももの付け根にスナップして、Z 軸方向に移動
これで OK

じゃっく
スナップするには、移動中に Alt を押します

極ベクトル Null の形が IK の Null と同じなので、変更します
オブジェクトプロパティから変更
アピアランスタブの「アイテム形状」から好きなものを選択します
いろんな形がありますが、今回はダイヤモンドを選択しました
目標と極ベクトルアイテムを指定する

ターゲットボーンを選択して、モーションオプションを展開
目標アイテムと極ベクトルアイテムを指定します
- 目標アイテム:leg_IK_L
- 極ベクトルアイテム:leg_pole_L
指定すると回転タブの各軸の制御項目が
- ヘディング制御:目標を注視
- ピッチ制御:目標を注視
- バンク制御:極ベクトルに沿う
と自動的に埋まるので、特に制御項目をいじる必要はないです
ターゲットボーンの親子付け順を変更する

設定したら一旦、極ベクトルを動かして動きを確認
この状態では、まだひざのコントロールが効きません
ターゲットボーンがくるくる空回りするだけです

じゃっく
くるくるくるくる・・・

この問題は親子付けの順番を変更すれば解決します
ターゲットボーンを太ももボーンより上にすれば OK
- leg_target_L
- leg_L
- knee_L
- ankle_L
- toe_L
- toe_top
- toe_L
- ankle_L
- knee_L
- leg_L
親子付けの順番を変えるときは名前の部分でクリックすると、失敗しにくいです
失敗すると修正が面倒くさいので、一旦保存しましょう

じゃっく
ちょっと癖あり
動作確認

もう一度、極ベクトルを動かして動作確認
動きに合わせて、ひざを動かすことができるようになりました

じゃっく
よしよし ええ感じ
これで IK 月のボーンに極ベクトルを追加することができました
完成です
まとめ
それでは、今回のまとめ
- IK が始まっているボーンを複製する
- 複製後ボーンに目標と極ベクトルを付与
- 目標アイテムに IK_Null を付ける
- 極ベクトルアイテムに pole_Null を付ける
- 複製したボーンを親、太ももを子にする
今回は極ベクトルとやらを追加して、ボーンの向きを操作できるようにしてみました
最初はターゲットボーンが、なぜ必要なのかよく分かりませんでした
作っていくうちに理解できましたが、やっぱりこういったものは、自分で一から作ると理解が深まります
IK は組めるようになった
極ベクトルも組めるようになった
とりあえず基本的なことは、できるようになったかなという印象です
これからも精進致します
それでは、お疲れさまでした~
おまけ
太ももに極ベクトルを当てた場合

ターゲットボーンを作らず、直接太ももに極ベクトルを付けたらどうなるかやってみました
こんな感じでおかしくなります

じゃっく
先がびよんびよんしよる・・・
足首のボーンは「ゴールを吸着」を有効にしているのですが、めちゃくちゃ外れます
なんでこうなるのか?というと、これは太ももに設定していた IK 設定が、無くなってしまっているからだと思います
こんな感じで正常なものとしては使えないので、ターゲットボーンは必須となります
足首を固定させる方法

足首を固定して、ひざだけ動くようにすることができるかどうかやってみました
まず、足首のボーンを複製

名前と色とサイズを変更します
とりあえず leg_IK_L としました

じゃっく
Null の方と重複しちゃってるけど、大丈夫そう
Null とボーンで種類が違う場合は、名前が同じでも重複扱いにならないみたいです

IK_Null で動かしたいので、ボーンの方の leg_IK_L を選択
モーションオプションを開いて、回転タブの内容にいくらか設定を加えます
- ワールド:オン
- 回転アイテム:Null の方の leg_IK_L
- ヘディング制御:アイテムと同じ
- ピッチ制御:アイテムと同じ
- バンク制御:アイテムと同じ
設定を加えるとボーンの leg_IK_L の角度が勝手に決まります
ちなみに「ワールド」のチェックを外すとどうなるのか?
見た目は変わりませんが動かした時、意図しない方向に回転します
基本はオンの方が良いかもしれません

動きを確認
すると、とりあえず Null の動きに合わせてかかとのボーンも付いてきます
ただ、これだと
- すね
- 足首
の順で親子付けされているので、目的の動作になりません
そこで親子付けを変更します
画像のように
- すね
- leg_IK_L
- 足首
- leg_IK_L
の順に並び変えます

もう一度動作確認
極ベクトルを動かすとひざだけ動くようになり、足首が固定された状態になります
なかなか良い感じじゃないでしょうか?
どこかで必要になるかもしれないと思って作ってみましたが、親子付けの順番って大事なんだなと改めて感じました
参考資料
使用ツール
- 3DCG
- LightWave3D
- 動画
- Bandicam
- ScreenToGif
