Blender 2.8 の使い方 (13) Rigifyによるリギング
前 (ボーン) www.mztn.org 次 (パーティクルヘア)
Rigify アドオンの使い方
前回 はアーマチュア(ボーン)の基本的な操作の説明でした。 人型のモデルにボーンを埋め込む (リギング) ことは単純に考えると人の骨格に合わせてボーンを設定するだけです。 しかし、実際にボーンを埋め込むとなると、背骨や手の指の骨など、かなりの数のボーンが必要になり、設定が大変なことが予想されます。 目や口、表情まで考えると気が滅入ります。
Blender に組み込まれた標準のアドオンとして、人型モデルのリギングを目的とした 「Rigify」があります。 人型だけでなく動物も含めたリギングが簡単に実現できます。 今回は「Rigify」を使って、 人型のモデルのポーズを自由に操作することを目的とします。
人型モデルへのリギング
Rigify を適用する人型モデルとして、頂点数の少ない人型モデルを作ってみました。 人型の基本は左右対称なので、向かって右半分の形を作って、左半分に ミラーモディファイア を使用(反転コピー)しています。
使用したモデル
ミラーモディファイア を有効にした状態で、790頂点のローポリモデルを使います。 デフォルトの立方体 (2m) から、主として「押し出し[E]」を使って下に伸ばして作成しました。 最終のサイズは高さ 18m になっていて、人間の身長の10倍ほどのモデルです。
斜め後ろから。後頭部のポリゴンは削減できそうな感じです。
手と顔のアップ。 一応、手の指は 5本あって、関節もあります。
ファイル名は little_man5_00.blend (754KB) でダウンロードできます。ご自由にお使いください。
Rigify アドオンの有効化
Rigify は組み込みのアドオンですが、最初は有効になっていないので、 プリファレンスの「アドオン」から「リギング」を選択して Rigify にチェックを入れます。
メタリグの追加
Rigify を有効化して オブジェクトモードで追加 を選ぶと、アーマチュア以下に Human、Animal、基本という項目が増えます。メタリグとは、使いやすいボーンの構成(リグ)を作成するためのリグです。
一旦、リグを作成したあとは、メタリグを削除しても構いません。
例えば、猫を選ぶと猫用の骨格が現れます。
今回は人型のモデルにリギングするため、Human(Meta-Rig) を選択します。
Human(Meta-Rig)は高さ約 2m の骨格なので、人型モデルをメタリグ(骨格)と同じサイズに縮小します。 骨格を拡大するより、モデルの大きさをメタリグ(骨格)に合わせた方が問題が少ないと思います。
モデルの高さ(Z)を 2.02m まで縮小しました。
モデルの拡大縮小率を1.0にするため、「オブジェクト/適用/全トランスフォーム」を実行します。
メタリグの編集
メタリグのボーンをメッシュに合わせて移動、回転、拡大縮小して 顔のパーツ、腕や足、指の関節の位置をモデルに合わせます。
色々な方向から見てボーンとメッシュの位置を合わせますが、選択部分を中心に回転すると操作が容易になります。 プリファレンスの「視点の操作」で「選択部分を中心に回転」にチェックを入れて、 自動パースのチェックを外すとオブジェクトを見失いにくくなります。
オブジェクトモードでメタリグを選択して、編集モードに切り替えます。 プロパティのアクティブツールのタブから「X軸ミラー」にチェックを入れて、左右対称に編集できるようにします。
顔の部分も細かくリグを設定できます。 眼球、まぶた、アゴ、鼻、耳など位置合わせが必要な箇所は多くあります。 いろいろな方向から見たり、邪魔な部分を一時的に非表示 [H] にしたりしてボーンの関節部分を移動させます。
ボーンの接続部分を移動させる場合は、円形選択やボックス選択 でボーンの先端と根本を両方同時に選択すると、ボーンの接続部分が分離しにくくなります。
手と指の部分も細かくモデルと位置を合わせます。 他のボーンが重なって表示されて見にくい場合は、見たい部分を選択、[Ctrl+I] で選択を反転、[H] で選択部分を隠すと 見やすくなります。 すべて表示する場合は [Alt+H] で戻ります。
全体にわたって、モデルの関節の位置とメタリグの関節位置を合わせていきます。 位置合わせが終わったら、人型モデルのミラーモディファイアを適用して、右半分のメッシュも実体化しておきます。
リグの生成
メッシュとボーンの位置合わせが終わったら、オブジェクトモードに変更して 「Generate Rig」ボタンを押します。
生成されるリグをすべて表示するためには、「ビューポート表示」で「最前面」にチェックを入れます。
リグのカスタマイズ
「Generate Rig」ボタンの上に Rigify Layer Names というパネルがあり、 リグ生成後のボーンのボタン名などを設定できます。
左端のアイコンは表示するボーンのレイヤーを指定します。次はリグ生成後のボタンの名前。右端の数字はRig LayersのUIを決めます。
「Generate Rig」ボタンを押して、リグを生成した後にサイドバーを表示すると Rigify Layer Names パネルで設定したボタンが表示されます。 ボタンを押すと、個々のリグの表示/非表示を制御できます。
Generate でのエラーと対策
Generate ボタンを押すと、"RIGIFY ERROR: Bone 'spine.004': Cannot connect chain-bone position is disjoint." のようなエラーが表示されることがあります。 ボーンの位置の編集で、問題が発生しています。
今回はボーンの位置の編集時に背骨の上端(spine.003)と、首の根元(spine.004)が分離してしまったことが原因です。背骨の上端(spine.003)を選択して、右クリックして表示されるコンテクストメニューから、「スナップ/カーソル→選択物」をえらんで 3Dカーソルを背骨の上端ボーン(spine.003)のテールに正確に移動します。
3Dカーソルが背骨の上端ボーン(spine.003)のテールに移動したことが確認できます。
次に首の根元のボーン(spine.004)のヘッドを選択して、右クリックして表示されるコンテクストメニューから、「スナップ/選択物→カーソル」を選択します。
背骨の上端(spine.003)と、首の根元(spine.004)が正確に接続され、Generate ボタンのエラーは解消されるはずです。
モデルとリグの接続
リグを生成した直後は、人形モデルのメッシュとは別のオブジェクトで、なんの関係もありません。 リグをメッシュの親に設定して、メッシュの頂点にボーンのウェイトを設定する必要があります。
オブジェクトモードでリグを選択した状態。
オブジェクトモードでメッシュを選択した状態。
シフトキーを押しながらリグを選択します。 最後に選択されたオブジェクトがアクティブオブジェクトになりますが、メッシュとリグを接続するためには、「最後にボーン」と覚えておきましょう。
その状態で、メニューから「オブジェクト/ペアレント/自動のウェイトで」を実行します。
右上のアウトライナーの表示を見ると、リグの下層にメッシュが移動していることが確認できます。
これで、人型モデルのメッシュは、リグの動きに合わせて変形するようになります。
リグの操作とメッシュの変形
Rigify アドオンで生成したリグ(コントローラ)を見やすいように表示しました。 コントローラが多すぎてわかりにくい場合は、サイドバー[N]の「アイテム」にある「Rig Layers」をクリックすることで、各コントローラを非表示にできます。
上半身、手、足のコントローラのアップです。
腕の3種類のコントローラだけを表示しています。インバースキネマティクス(IK)、フォワードキネマティクス(FK)、微調整(Tweak) です。
普通に生活していて、肩の関節の動きを気にすることはないと思います。しかし、「何かに触れる」、「上に挙げる」、「横に広げる」といった具合に、手の位置を意識することは多くあります。
手の位置は、足の位置、腰の回転、肩の向き、肘の角度、手首の向きといった順で決まってきます。 数学的にも座標変換の順序です。 一方、手の位置から逆に、手首の向き→肘の角度→肩の向き→腰の回転→足の位置のように計算することをインバースキネマティクス(IK)と呼びます。 数学的に普通の座標変換の順序は、インバースキネマティクス(IK)の逆ということでフォワードと呼ばれるようになりました。
さて、手のひらに表示されている赤いコントローラはインバースキネマティクス(IK)のコントローラです。 位置を変えたり、回転させたりすると、肘や肩の関節は自動的に角度が変わります。 肘の位置は青いTeakコントローラで修正できます。
グリーンの線と円はフォワードキネマティクス(FK)用のコントローラです。 赤枠で示したサイドバーの値を変更すると、IKとFKで設定した中間の姿勢に設定することができます。
いろいろなコントローラを操作することで、人型のモデルのポーズや表情を自由に操作できます。 今回のモデルでは表情を操作できるほどの詳細なメッシュではありませんが。
Rigify は非常に機能が多く、さらに詳細な機能はRigifyのマニュアルを参照してください。
Blender 2.8 - 4.3 の使い方 [目次]
- (01) インストールと日本語化
- (02) 画面構成とモード
- (03) オブジェクトモード
- (04) 球と円柱でモデリング
- (05) スカルプトモード
- (06) 編集モード
- (07) リトポロジー
- (08) Python スクリプト
- (09) マテリアル (1)
- (10) マテリアル (2)
- (11) マテリアル (3)
- (12) アーマチュア(ボーン)
- (13) Rigifyによるリギング
- (14) パーティクルヘア
- (15) グリースペンシル
- (16) ジオメトリーノード (1)
- (17) ジオメトリーノード (2)
- (18) カメラ
- (19) ジオメトリーノード (3)
- (20) 新ヘアシステム Hair Curves
- (21) ヘアカーブの進化
- (22) Vector Displacement Mapブラシ
- (23) アセットライブラリ
- (24) シミュレーションゾーン
- (25) ボーンコレクションとRigify