【LightWave 3D】ボーンだけで腕のIK/FKリグを組む

ボーンだけで腰を振れる背骨のリグを組む
の続きになります。
3DCGアニメーションの
練習動画で使ったリグです。
腕がフリップしたり
曲げた肘のメッシュが破綻したり
手首が細くなったり
色々問題が多かった自作リグ。
問題点を直して
使えるリグに改良しました。

手の平のボーンを
腕のIKゴールの回転と同期させる事で
手が床にぴったりくっ付いたまま
腕立て伏せが出来るようになっています。
肘のメッシュの破綻も修正。
3DCGアニメーション練習動画では
IKでブランコの棒を掴めなかったんですが
改良したリグのIKでは
掴めるようになりました。

レンダリング画像。

それでは
改良して使えるようになった
腕のIK/FKリグをボーンだけで
組んで行きます。
ボーンだけで腕のIK/FKリグを組む
前回の続きなので
ボーンだけで腰を振れる背骨のリグを組む
のファイルを
モデラーに読み込みます。
腰を振れる背骨のリグの記事はこちら
モデラーでの作業
腕のスケルゴンを作って行きます。
肩のスケルゴンの作成
背面ビューから。
セットアップ>スケルゴン>スケルゴン作成で
肩のスケルゴンを作成。

セットアップ>スケルゴン>スケルゴン名変更で
スケルゴンに名前を付けます。

このように付けました。
長いスケルゴンはFKの時に
腕の上げ下げをするコントローラーです。
分かりやすくする為に
脚と背骨のスケルゴンを
レイヤー1に残して
肩のスケルゴンをレイヤー2に移動します。
shoulder_Lを選択。

上面ビューからスケルゴン作成。

Z方向に伸ばしました。
その他のウィンドウ>情報
詳細>ポイント>整列を
駆使して
スケルゴンを垂直水平に整えます。
ポイント情報はショートカットキーIで
整列はショートカットキーV。
変形>移動>整列>
最終ポイントのX座標への整列
最終ポイントのY座標への整列
最終ポイントのZ座標への整列なんかも便利です。
Z方向に作成したスケルゴンに名前を付けます。

このスケルゴンは
IKを使う時に
肘の上げ下げをコントロールするので
elbow_IK_ctrl_Lと名前を付けました。
腕のスケルゴンを作成
もう1回shoulder_Lを選択。

上面ビューからスケルゴン作成で
腕のスケルゴンを作成します。

上腕にあたるスケルゴンを選択。

スケルゴン作成で肘のスケルゴンを作成。

上腕を選択して肘のスケルゴンを作成。
ポイント情報と整列を駆使して
肘のスケルゴンを垂直にして
前腕のスケルゴンの先端を
arm_FK_ctrl_Lの先端とぴったり合わせます。

統合したり結合したりはしません。
腕のスケルゴンに名前を付けます。

上腕はupper_arm_L前腕はfore_arm_L
肘はelbow_Lと付けました。
手のスケルゴンを作成
次は手のスケルゴンを作成します。
fore_arm_Lを選択。

背面ビューからスケルゴンを作成。

更にもう1回fore_arm_Lを選択して
同じ方向にスケルゴンを作成。

ポイント情報と整列を駆使して
作った手のスケルゴンを
水平にして
名前を付けます。

長いスケルゴンはarm_IK_goal_L
短いスケルゴンはhand_Lと付けました。
fore_arm_Lを選択して
セットアップ>スケルゴン>スケルゴン分割。

分割したスケルゴンに名前を付けます。

wrist_Lと付けました。
指のスケルゴンを作成
次は指のスケルゴンを作成します。
まずは親指から
上面ビューで3本スケルゴンを作成。

次は人差し指。
背面ビューで3本スケルゴンを作成。

人差し指のスケルゴンを選択して上面ビューから
マルチ加工>複製>複製。

中指と薬指と小指を作ります。
複製数は3で
オフセットはZ方向に15mmを指定。
指を移動して位置を整えたら
名前を付けます。

親指はthumb
人差し指はindex
中指はmiddle
薬指はring
小指はlittleと
名付けました。
数字は
第一関節は1
第二関節は2
第三関節は3にしています。
指の数字を逆に付ける人が多いですが
こっちの方が自然ですね。
スケルゴンエディター
スケルゴンを並べ終わったので
スケルゴンエディターで
ピッチの方向を
設定して行きます。
めんどくさい作業が続きますが
頑張りましょう。
3DCGとはめんどくさい物。
腕のスケルゴンを全選択して
セットアップ>スケルゴン>スケルゴンエディター。

とりあえず全ての腕のスケルゴンのバンクを
-Zに整列。

shoulder_Lと
arm_FK_ctrlと
elbow_IK_ctrl_Lのバンクを
+Yに整列。

shoulder_Lと
arm_FK_ctrlと
elbow_IK_ctrl_Lの
ピッチが縦になりました。

hand_Lと
arm_IK_goal_Lと
人差し指と中指と薬指と小指を選択して
+Yに整列。

hand_Lと
arm_IK_goal_Lと
人差し指と中指と薬指と小指のピッチが
上を向きました。

この作業はレイアウト側で
hand_Lとarm_IK_goal_L
人差し指と中指と薬指と小指のピッチ(緑の円)が
右面ビューで円に見えるようにしたいからです。
腕のスケルゴンを
マルチ加工>複製>鏡面 Xで鏡面コピーします。

右腕のスケルゴンの語尾を
スケルゴン名変更で_Lから_Rに書き換え。

指の数が多いので大変ですが
遠い目をしながら
ひたすら名前を変更して行けば
そのうち終わります。
画像では視認性を上げる為に
スケルゴンに色を着けました。
スケルゴンの色の変更は
詳細>ポリゴン>スケッチ色です。
スケルゴンツリーのスケルゴン名を
ダブルクリックすると名前変更が出来るので
スケルゴンツリーで名前を変更すると
楽かも知れません。

腕のスケルゴンをレイヤー1に
コピー&ペーストします。
腕のスケルゴン完成。

これでモデラーでの作業は終了です。
ファイルに名前を付けて保存して
レイアウトに読み込みます。
レイアウトでの作業
セットアップ>追加>スケルゴン変換で
スケルゴンをボーンに変換。

シーン編集エディタを開いて
分かりやすいように
ボーンに
色を着けました。

親子関係がバラバラですが
一つ一つ親子付けをして行きます。
脚の親子付けは今回説明しないので
前回の
ボーンだけで腰を振れる背骨のリグを組む
の記事を見てください。
腰を振れる背骨のリグの記事
ボーンの親子付け
まずは背骨から。

spineから下の階層と
hipをrootの子にします。
次は右肩。
shoulder_Lから下の親子付け。

elbow_IK_ctrl_Lを
arm_FK_ctrl_Lの子に。
elbow_IK_ctrl_L
upper_arm_L
elbow_L
fore_arm_L
wrist_L
hand_Lの順に子にして行きます。
次は指。

index3_Lから下の階層と
middle3_Lから下の階層と
ring3_Lから下の階層と
little3_Lから下の階層と
thumb3_Lから下の階層を
hand_Lの子にします。
右腕も左腕と同様に親子付け。

IK_goalはオブジェクトの子にします。

shoulder_Lから下の階層と
shoulder_Rから下の階層を
chestの子にして
腕の親子付け終了。

この形が完成形です。

中心点回転記録
一番難しいのがここ。
shoulder_Lと
arm_FK_ctrl_Lと
elbow_IK_ctrl_Lを
セットアップ>変形>オリエンテーション>中心点回転記録。

レイアウト側でピッチの方向を直そうとして
ボーンツイストを使ってから
中心点回転記録をすると
ボーンが無効になる事があります。
ボーンが点線になっているのは
ボーンが無効の時です。

ボーンプロパティを開いて
ボーン有効にチェックを入れます。

3DCGアニメーションの練習動画で
手首が
細くなってしまったのは
これが原因でした。
中心点回転記録の後は
ボーンが
無効になっていないか
ちゃんと確認しましょう。
shoulder_Lとarm_FK_ctrl_Lと
elbow_IK_ctrl_Lの回転軸。

shoulder_Lとarm_FK_ctrl_Lは
ピッチの緑の輪っかが背面ビューで円に見えます。
arm_FK_ctrl_Lだけは
背面ビューから見て
ピッチの緑の円が
正面を向かないようです。
残りの全ての左腕のボーンに
中心点回転記録で数値をリセットします。
腕と親指の回転軸。

上面ビューから見て
ピッチの緑の輪っかが円に見えます。
hand_Lとarm_IK_goal_Lと
人差し指と中指と薬指と小指の回転軸。

hand_Lとarm_IK_goal_Lと
人差し指と中指と薬指と小指は
右面ビューから見て
ピッチの緑の輪っかが円に見えます。
IKの設定
いよいよIKの設定をして行きます。
elbow_IK_ctrl_Lの
モーションオプションの設定から。

IKとモディファイヤ>
子孫のIK効果を及ぼさないにチェック。
upper_arm_Lのモーションオプション。

制御と制限>回転>
ヘディング制御と
ピッチ制御を
インバースキネマティクス。
elbow_Lのモーションオプション。

制御と制限>回転>
ピッチ制御をインバースキネマティクス。
fore_arm_Lのモーションオプション。

制御と制限>回転>
ピッチ制御をインバースキネマティクス。
hand_Lのモーションオプション。

IKとモディファイヤ>
ゴールオブジェクトをarm_IK_goal_L。
ゴール回転と同期と
ゴール接着にチェック。
次はarm_IK_goal_Lのボーンプロパティ。

固定長を3mm
ボーンアイコンサイズは10000%に設定。
これでIKの設定は終了です。
IKの動かし方
IKの動かし方は
黄色いarm_IK_goal_Lを
移動したり
回転させたりします。
肘の高さは
赤いelbow_IK_ctrl_Lの
青い輪っかのバンクを
回転させてコントロール。
arm_IK_goal_Lを上下に動かすと
フリップしやすいので
フリップしたら赤いelbow_IK_ctrl_Lを
緑の輪っかのピッチ軸を回転して直します。

hand_Lのゴール回転と同期に
チェックを入れた事で
手の平が床に固定されて
腕立て伏せのようなモーションが出来ます。

FKの設定
次はFKの設定です。
arm_FK_ctrl_Lのボーンプロパティ。

固定長3mm
ボーンアイコンサイズ10000%に設定しました。
elbow_Lのモーションオプション。

制御と制限>回転
回転アイテムをfore_arm_Lに設定。
ピッチ制御をアイテムと同じ。
×/+に0.5。
×/+に0.5を設定する事で
腕のボーンを回転させてもelbow_Lが
upper_arm_Lとfore_arm_Lの
真ん中の角度になります。
真ん中にならない時は
-0.5にすると良いそうです。
hand_Lのモーションオプション。

IKとモディファイヤ>
ゴール回転と同期と
ゴールを接着の
チェックを外しました。
elbow_Lのピッチ制御を
インバースキネマティクスにしておいて
wrist_LのIK/FKブレンディングを
100%にしてもFKに出来ます。
elbow_Lのモーションオプション。

wrist_Lのモーションオプション。

hand_Lの
ゴール回転と同期と
ゴールを接着のチェックを外さなくて良いので
こっちの方が楽かも知れません。
これでFKの設定は終了。
FKでの動かし方
FKではまず
緑色のarm_FK_ctrl_Lを
緑の輪っかのピッチ軸に回転させて
腕を下げてください。

upper_arm_Lと
fore_arm_Lを
ピッチ軸に回転させる事で
腕を振ります。
IKに戻すには!?
IKに戻すには
elbow_Lのモーションオプションで
ピッチ制御を
インバースキネマティクスに変更。
hand_Lのモーションオプションの
IKとモディファイヤ>
ゴール回転と同期と
ゴール接着にチェックを入れます。
肘のメッシュの破綻を直した方法
3DCGアニメーションの練習動画では
逆上がりのアニメーションで
腕を曲げた時に
肘のメッシュが破綻していました。
それを今回直したんですが
直した方法を解説。

腕を曲げた時に肘のメッシュが
破綻したのは
肘のボーンが
外側ギリギリにあったからです。

upper_arm_Lを選択して
セットアップ>変形>チップ移動。

手のボーンがずれてしまいましたが
fore_arm_Lを3回ぐらい
チップ移動とチップ移動解除を繰り返したら
手のボーンが丁度良い位置に戻りました。
モーションを付けてしまっていたので
レイアウト側でやりましたが
新しくアニメーションを作るなら
モデラー側でスケルゴンを直した方が良さそうです。

ポイントを選択して
肘のスケルゴンを中央に寄せます。

またレイアウト側でリグの設定を
一からやり直しになってしまいますけど。
お疲れさまでした。
ボーンだけで組む
腕のIK/FKリグは終了です。
参考にしたブログはこちら。
鱒木様のメモ帳
ありがとうございました。
3DCGアニメーションの練習動画の時の
上手く行かなかったところを
かなり解消出来たのでは
ないでしょうか。
自作リグは組むのが大変なので
おとなしく
GENOMA2のヒューマンリグを
使った方が良かったかも。
今回は以上です。
前回の記事はこちら








