MRが楽しい

MRやVRについて学習したことを書き残す

Blender2.8でIK(インバースキネマティクス)を使った人型アーマチュアを作成する その5(腕のIK設定 前半)

本日は Blender2.8 の手順枠です。
Blender2.8でIK(インバースキネマティクス)を使った人型アーマチュアを作成する手順を記事にします。

前回記事の続きです。
bluebirdofoz.hatenablog.com

腕のIK設定

本項ではこれまで作成した足の IK を参考に、腕のIKも設定していきます。

コントロールボーンの作成

最初に腕のコントロールボーンを作成します。
アウトライナーウィンドウからアーマチュアオブジェクトを選択して[編集モード]を開きます。
f:id:bluebirdofoz:20200922230412j:plain

手の甲の部分に当たる hand.L ボーンを選択します。
f:id:bluebirdofoz:20200922230422j:plain

この状態でメニューから[アーマチュア -> 複製]を実行するか、[Shift+D]キーでボーンを複製します。
f:id:bluebirdofoz:20200922230432j:plain

そのまま複製したボーンをドラッグして hand ボーンの外側に配置します。
f:id:bluebirdofoz:20200922230444j:plain

次に作成したボーンの名前と親子関係を変更します。
複製ボーンを選択した状態で[ボーンプロパティ]を開きます。
[関係]パネルを開いて[ペアレント]のボーンを[×]ボタンで削除し、親ボーンを持たないボーンとします。
f:id:bluebirdofoz:20200922230454j:plain

その後、[ペアレント]のボーンに root ボーンを設定してルートボーンを親ボーンとして設定します。
f:id:bluebirdofoz:20200922230509j:plain

更に、プロパティ上部の名前を適当な名前に変更します。
この後、左右対称の設定を行うため、名前の最後には[.L]を必ず付けます。
今回は control.forearmIK.L としました。
f:id:bluebirdofoz:20200922230521j:plain

IKの適用と設定

コントロールボーンを参照して動作する IK を適用します。
アウトライナーウィンドウからアーマチュアオブジェクトを選択して[ポーズモード]を開きます。
f:id:bluebirdofoz:20200922230534j:plain

左の前腕に当たる forearm.L ボーンを選択し、[ボーンコンストレインプロパティ]を開きます。
f:id:bluebirdofoz:20200922230546j:plain

[ボーンコンストレイント追加]のプルダウンを開き、[インバースキネマティクス(IK)]を選択して追加します。
f:id:bluebirdofoz:20200922230600j:plain

次に IK の設定を行います。
[ターゲット]に対象のアーマーチュアオブジェクトを選択します。
f:id:bluebirdofoz:20200922230612j:plain

[ボーン]の項目が追加されるので、先ほど作成した control.forearmIK.L を指定します。
f:id:bluebirdofoz:20200922230625j:plain

[チェーンの長さ]を[2]に設定します。
これにより、IK を適用したボーンを含めて2つの親ボーン(前腕と上腕)が連動します。
因みに[0]を指定している場合は全てのボーンが連動します。
f:id:bluebirdofoz:20200922230636j:plain

肘のIK設定

本項ではボーンの回転制限を行い、肘の逆関節を防ぎます。

回転制限の設定

IK を設定したボーンに回転角度の制限を設けます。
アウトライナーウィンドウからアーマチュアオブジェクトを選択して[ポーズモード]を開きます。
f:id:bluebirdofoz:20200922230648j:plain

forearm.L ボーンを選択した状態で[ボーンプロパティ]を開きます。
更に[インバースキネマティクス(IK)]のパネルを開きます。
f:id:bluebirdofoz:20200922230717j:plain

IK を設定したボーンの場合、ここで回転軸や回転角度の制限を設定できます。
以下の通り、肘が特定軸の方向に曲がったり、逆関節にならないよう設定を行います。

IKをロック:Y,Z
X軸制限:チェック
X軸制限-最小:-15°
X軸制限-最大:135°

f:id:bluebirdofoz:20200922230729j:plain

次はポールターゲットの設定と対称化を行います。
bluebirdofoz.hatenablog.com