今回は極ベクトルというものを付け加えて、ボーンの向きをコントロールする方法を載せてみました

極ベクトルが無い場合は、直接ボーンを動かしてひざの向きを指定します

できなことは無いですけど、あまり直感的ではない

極ベクトルを組めば、この問題はいくらか解決します

LightWave には一発で、極ベクトルを付けることができる機能があるわけですが、通常のボーンに対しては使いづらく感じました
※「 Make Joint Chain 」というもの

じゃっく

どのボーンを選択して実行すれば良いのか、分かりずらい

そう ちょっと個人的にクセ強なんです

そんな理由があったので、理解深めることも含めて初めから作ることにしました

ひとまず正常に動くことが確認できたので、忘れないようメモっていきます

準備

基本的な IK を組む

まずは準備として、基本的な IK を付けたリグを用意します

これは過去記事に沿って作成しました

もし、動かなかったら「 IK 有効」がオンになっていないはずなので、Shift+F8 で有効にします

手順

では、さっそく極ベクトルを付け加えていきます

手順はこんな感じ

IK の根元ボーンを複製する

STEP1
太ももボーンを複製する

始めに IK の始まりがある太もものボーンを複製します

ショートカットは Ctrl+C です

複製すると強制的にかっこ付きの名前で生成されるので、この名前を変更します

STEP2
名前を変更する

複製したボーンを右クリックで

「操作」→「名称変更」

から名前を変更

とりあえず、leg_target_L としました

ボーンの色とサイズを変更する

分かりにくいので、もう少し手を加えます

ボーンの色と大きさを変更

骨のアイコンあたりでクリックすれば、色を変えることができます

このボーンの正式名称は不明ですが、名前が無いと困るので

ターゲットボーン

と勝手に呼ぶことにします

IK_Null を注視するボーンということで、この名にしました

ちなみに初見だと、このボーンを作る意味が分からず

じゃっく

なんで二重に入れているんだろう?

という感じでナゾでした

ただ、このボーンが無いと動作が不安定・・・というより、無いと本来の動きになりません

LightWave の場合、恐らくこのボーンは必須だと思います
おまけにターゲットボーンを作らなかった場合を載せています

極ベクトル用の Null を用意する

STEP1
Null を複製する

極ベクトルとして扱う Null を作成します

leg_IK_L を複製して、名前を leg_pole_L としました

STEP2
極ベクトル Null の位置を調整する

極ベクトル Null の位置を調整します

一旦、太ももの付け根にスナップして、Z 軸方向に移動

スナップするには、移動中にショートカット Alt

じゃっく

ペッとスナップ

これで OK

STEP3
極ベクトル Null の形を変える

極ベクトル Null の形が IK の Null と同じなので、変更します

オブジェクトプロパティから変更

アピアランスタブの「アイテム形状」から好きなものを選択します

いろんな形がありますが、今回はダイヤモンドを選択しました

目標と極ベクトルアイテムを指定する

ターゲットボーンを選択して、モーションオプションを展開

目標アイテムと極ベクトルアイテムを指定します

  • 目標アイテム:leg_IK_L
  • 極ベクトルアイテム:leg_pole_L

指定すると回転タブの各軸の制御項目が

  • ヘディング制御:目標を注視
  • ピッチ制御:目標を注視
  • バンク制御:極ベクトルに沿う

と自動的に埋まるので、特に制御項目をいじる必要はないです

ターゲットボーンの親子付け順を変更する

STEP1
動かして状態を確認する

設定したら一旦、極ベクトルを動かして動きを確認

この状態では、まだひざのコントロールが効きません

ターゲットボーンがくるくる空回りするだけです

じゃっく

くるくるくるくる・・・

STEP2
ターゲットボーンの親子付け順を変更する

この問題は親子付けの順番を変更すれば解決します

ターゲットボーンを太ももボーンより上にすれば OK

親子付け順
  • leg_target_L
    • leg_L
      • knee_L
        • ankle_L
          • toe_L
            • toe_top

親子付けの順番を変えるときは、名前の部分でクリックすると失敗しにくいです

失敗すると修正が面倒くさいので、一旦保存しましょう

じゃっく

ちょっと癖あり

動作確認

もう一度、極ベクトルを動かして動作確認

動きに合わせて、ひざを動かすことができるようになりました

じゃっく

よしよし ええ感じ

これで IK 月のボーンに極ベクトルを追加することができました

完成です

まとめ

それでは、今回のまとめ

まとめ
  • IK が始まっているボーンを複製する
  • 複製後ボーンに目標と極ベクトルを付与
  • 目標アイテムに IK_Null を付ける
  • 極ベクトルアイテムに pole_Null を付ける
  • 複製したボーンを親、太ももを子にする

今回は極ベクトルとやらを追加して、ボーンの向きを操作できるようにしてみました

最初はターゲットボーンが、なぜ必要なのかよく分かりませんでした

作っていくうちに理解できましたが、やっぱりこういったものは、自分で一から作ると理解が深まります

IK は組めるようになった

極ベクトルも組めるようになった

とりあえず基本的なことは、できるようになったかなという印象です

これからも精進致します

それでは、お疲れさまでした~

おまけ

太ももに極ベクトルを当てた場合

ターゲットボーンを作らず、直接太ももに極ベクトルを付けたらどうなるかやってみました

こんな感じでおかしくなります

じゃっく

先がびよんびよんしよる・・・

足首のボーンは「ゴールを吸着」を有効にしているのですが、めちゃくちゃ外れます

なんでこうなるのか?というと、これは太ももに設定していた IK 設定が、無くなってしまっているからだと思います

こんな感じで正常なものとしては使えないので、ターゲットボーンは必須となります

足首を固定させる方法

STEP1
足首のボーンを複製する

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

まず、足首のボーンを複製

STEP2
名前と色とサイズを変更する

名前と色とサイズを変更します

とりあえず leg_IK_L としました

じゃっく

Null の方と名前が重複しちゃってるけど、大丈夫そう

Null とボーンで種類が違う場合は、名前が同じでも重複扱いにならないみたいです

STEP3
IK_Null で動かすように設定する

IK_Null で動かしたいので、ボーンの方の leg_IK_L を選択

モーションオプションを開いて、回転タブの内容にいくらか設定を加えます

  • ワールド:オン
  • 回転アイテム:Null の方の leg_IK_L
  • ヘディング制御:アイテムと同じ
  • ピッチ制御:アイテムと同じ
  • バンク制御:アイテムと同じ

設定を加えるとボーンの leg_IK_L の角度が勝手に決まります

ちなみに「ワールド」のチェックを外すとどうなるのか?

見た目は変わりませんが動かした時、意図しない方向に回転します

基本はオンの方が良いかもしれません

STEP4
動きを軽く確認

動きを確認

すると、とりあえず Null の動きに合わせてかかとのボーンも付いてきます

ただ、これだと

  • すね
    • 足首

の順で親子付けされているので、目的の動作になりません

そこで親子付けを変更します

画像のように

  • すね
    • leg_IK_L
      • 足首

の順に並び変えます

STEP5
もう一度動作確認をする

もう一度動作確認

極ベクトルを動かすとひざだけ動くようになり、足首が固定された状態になります

なかなか良い感じじゃないでしょうか?

どこかで必要になるかもしれないと思って作ってみましたが、親子付けの順番って大事なんだなと改めて感じました

参考資料

使用ツール

3DCG
  • LightWave3D
動画
  • Bandicam
  • ScreenToGif