【Blender4.5】Rigifyを理解したい:サブリグの使い方・リグの改造

【Blender】Rigifyを理解したい:サブリグの使い方・リグの改造 blender
記事内に広告が含まれています。

BlenderのアドオンRigifyは、ワンクリックで高機能なリグを自動生成できる便利なツールです。
しかし本当の魅力は、「ただの自動生成」ではなく、モジュール(部品)を組み合わせて全身リグを構築できるブロック構造にあります。

人型リグをベースに、猫耳・しっぽ・髪の毛などのサブリグを追加して、キャラクターに合わせたオリジナルリグを作ることも可能です。

とはいえ、マニュアルを読んでも仕組みが分かりづらく、「どこをどう設定すればいいのか」「どうやってサブリグを追加するのか」でつまずく人も多いと思います。
自分自身もかなり迷ったので、Rigifyの内部構造やサブリグの使い方、改造の基本を整理してまとめることにしました。実際に猫耳・しっぽ・髪の毛用のサブリグを追加して、リグの改造の仕方も解説しています。(UIの設定方法についても書いています。)

この記事では、Rigifyの基本構造から、サブリグを活用したリグ改造の流れまでを、できるだけ分かりやすく解説します。
Rigifyでリグを組んだりカスタマイズしたりするための基礎」を身につけたい方は、ぜひ参考にしてみてください。

問題なくリグが生成できた

この記事は、BlenderのアドオンRigifyのサブリグを使ってリグの改造やメタリグの作り方について解説している中級~上級者向けの記事です。

難易度 3.5

メタリグの基本的な使い方については以下の記事に書いています↓

スポンサーリンク

Rigifyを使うメリット

Rigifyは「人間が使いやすいコントロールリグ」を自動生成するためのアドオンです。

メタリグ(meta-rig)という、リグ生成に必要なすべての情報を持った設計図のような骨構造をメッシュに合わせ、1クリックで複雑なリグを自動生成することができます。

Rigify は、初心者のうちは全身が組まれたメタリグを使う方が多いと思いますが、あらかじめ用意された「部品(モジュール)」を組み合わせて、全身リグを素早く構築できるモジュール式リギングシステムでもあります。一度仕組みを理解すれば、キャラクターリグを効率的に構築・カスタマイズでき、自分だけの高機能リグを作り上げることができます。

  • ブロック構造(モジュラー方式)
    • Rigifyは、腕・脚・背骨・指などの小さなリグパーツ(サブリグ)を組み合わせて、1つのキャラクターリグを構築します。たとえば「腕5本・脚1本のキャラ」など、独特な体型でも自由に構成できる柔軟さがあります。

Rigifyで生成されたリグは、Rigifyなしでも完全に動作します。つまり、リグを他人に渡しても、その人がRigifyを入れていなくても問題ありません。Rigifyは“生成ツール”であり、生成後のリグは独立して使える仕組みになっています。他にもリグの再生成ができたり、同じRigifyベースのメタリグを使えばアニメーションが共有できたりPythonスクリプトで拡張できたりと高機能で便利です。

※Rigifyが自動化してくれるのは、コントロールボーンと構造の生成までです。メッシュ(モデル)へのスキニングやウェイト設定は、ユーザーが自分で行う必要があります。

スポンサーリンク

Rigifyの内部構造:メタリグとサブリグ

メタリグは「サブリグ」の集合体

Rigifyのメタリグは、複数のサブリグ(Sub-Rig)の組み合わせで構成されています。

デフォルトで用意されているHuman型のメタリグもたくさんのサブリグが組み合わさってできたものです。

メタリグは「サブリグ」の集合体

サブリグの作り

サブリグには1本から出来たものも、ボーンチェーンとなっているものもあります。

  • ボーンチェーン(Bone Chain)
    • ボーン同士が「Connected(接続)」になっている部分。
    • 各チェーンの最初のボーンには、Rigify用のカスタム属性(Rig Type)が設定されます。
    • この属性が「この部分は腕」「この部分は足」といったサブリグの種類を決定します。

別のサブリグ同士を連結してしまうとサブリグのボーンチェーンの一部だと思われてしまい、うまくリグ生成できません。複数のサブリグを組み合わせるときは連結させずにペアレントします。

サブリグの作り

Rigifyはリグ生成時に:

各ボーンチェーンを走査 → 「Rig Type」を参照 → 対応する制御ボーン・変形ボーン・ウィジェットを自動生成
という流れでリグを作ります。

メタリグの再利用性

Rigifyは「サブリグ単位」で組み立てるため、
同じブロックを組み合わせることで、
人型・猫型・鳥型など、無限にバリエーションを作ることが可能です。

スポンサーリンク

サブリグを使ってメタリグを作る作成手順

サブリグを作ってメタリグを作成するには2つの方法があります。

  • 用意してあるサブリグを組み合わせて作る
    • サンプル(Rigify Samples)を追加して組み合わせる
  • リグタイプを指定して作る(上級者向け)
    • 自分でボーンチェーンを作り、リグタイプを指定してサブリグを作り、それを組み合わせていく

❶サブリグを組み合わせて作る

1, サブリグの追加

まず単一のボーンを出して、編集モードに移動します。(単一のボーンは削除してください。)

オブジェクトデータプロパティのRigifyメニューの中にSamples(サンプル)というタブがあるので開きます。

使いたいサブリグを選んでAdd sampleボタンを押すと画面に追加されます。

サブリグの追加

2,サブリグを組み合わせる

ここにさらに違うサブリグを追加することもできます。またSamplesの中から、今度はfaces.super_faceを追加して、Keep Offsetでもう一つのサブリグとペアレントしました。(連結はしません)

※ペアレントしていいボーンや、特定のボーンとしかペアレントできないサブリグも昔はあった気がするんですが、今どうなのかよくわかりません…リグ生成するときにエラーが出ないようにやってみるしかないのと、完成してるメタリグを参考に作っていくと良いと思います。

Keep Offsetでもう一つのサブリグとペアレント

3,UI設定

(昔はこれやらなくてもよかったんですが、)新しいRigifyはUI設定をしないとリグ生成できません。

UI設定とは、ボーンのグループ分け、リグの表示非表示のボタンと、リグの色わけ、などです。

オブジェクトデータプロパティ > Rigify > Bone Collection UI > UI Layout で、ボタンを作れと言われているので、三角のボタンを押してとりあえずボタンを作ります。

適当に作るときはこれでいいですが、実際ちゃんと作るときは、ボーンを操作しやすいようにグループにわけてカラーセットを作って、UIのボタンもきちんと割り当ててください。(設定方法については後のセクションで解説しています。)

新しいRigifyはUI設定をしないとリグ生成できません。

4,リグを生成する

Generate Rigのボタンを押してリグを生成します。

エラーがでなければそのままリグが生成されます。

画面に見えている、Rig Layersというボタンが、リグの表示、非表示のボタンです。UI設定で割り当てたボタンです。

rootについて

Rigifyはルートボーンがないと自動的にルートを作ってくれるので作る必要はないです。

ルートボーンを作りたいときは、単一のボーンを追加して名前を「root」にするだけでルートになります。

ルートボーンの方向はリグに影響するので、ワールドのXYZに合わせて回転させておきましょう。

サブリグを組み合わせてリグを生成するところ
スポンサーリンク

❷リグタイプを指定して作る(上級者向け)

自分でサブリグを0から作る方法もあります。

例えば、basic.copy_chainというサブリグはSamplesから出すこともできますが、連結しているボーンが3つと個数が決まっています。

自分で単1のボーンを出して、Eキー押し出しで5個つないで、根本の親ボーンにRigify Typeをbasic.copy_chainに指定すれば、好きな長さのサブリグを作ることができます。(数を変更できないサブリグや、最大、最小個数が決まってるサブリグもあります。)

ちなみにRigify Typeのメニューが出るのはポーズモード(Pose Mode)です。(Rigifyのメニューは特定のモードじゃないと出てこない設定もあり、それが少しわかりづらいです。)

  • 一番上の親ボーンにRigify Typeを指定することで、任意のサブリグ機能(腕、脚、脊椎など)を手動で設定可能。
  • オプションを細かく調整し、自作のメタリグを構築できます。

Optionsはそれぞれのサブリグに固有のものや、かなりたくさんの種類があり、把握するのは難しいです。Samplesのものを参考にして作ったりするしかなさそう。主なオプションだけ以下に紹介しておきます。

根本の親ボーンにRigify Typeを指定してサブリグにする

オプション(Options)

Widget Type

リグにしたときのカスタムシェイプを選べます。

rigifyで使えるカスタムシェイプ
サブリグオプションのWidget Type

ほかにもRelink Constraint, Register Parentなど便利そうなオプションがありますが、まだ使い方がよくわかりません。

コンストレイントは引き継がれない

メタリグにつけたコンストレイントはデフォルトのままでは引き継がれません。特定のリグタイプのボーンに@DEFや@CTRLなどコンストレイントの名前の最後につけることで生成されたリグに引き継ぐことも可能なようです。ちょっと難しいのでまた理解できたときに記事にしようと思います。

スポンサーリンク

サブリグを追加してリグを(再)生成する

Human型のメタリグを使うと簡単に人型キャラクターのリグを生成できますが、キャラクターにいろいろリグを追加したいことも多いです。サブリグを使って、猫耳や、髪の毛、しっぽなどがあるキャラクターにリグを追加する方法を解説します。

猫耳、髪、しっぽのリグを追加してみる

人間型がベースですが、耳とポニーテールとしっぽがあるキャラクターのメッシュ

左図のような簡単なメッシュを用意しました。人間型がベースですが、耳とポニーテールとしっぽがあるキャラクターです。

デフォルトのBasic Humanのメタリグ

デフォルトのBasic Humanのメタリグは左図のような基本人体のサブリグしかありません。

ここに耳、髪、しっぽ用のサブリグを追加していきます。

Rigifyは一回リグを生成して、またサブリグやボーンを追加して再生成など何回でもできるので、安心していろいろテストすることができます。

猫耳、髪のサブリグを追加

猫耳、髪に使うのはlimbs.simple_tentacleというサブリグです。Add sampleボタンで追加します。

ボーンチェーンが3本つながっていますが、先端の方は何本増やしても動作します。最低2本繋がってれば動作するので使いやすいです。(根本の親ボーンは削除しないでください。

Eでボーンを生やして好きな長さにしてください。

このリグは、根本を回転させると先端のボーンへ大きく動きが伝わり、髪、耳など揺れてるものにぴったりなサブリグです。

※その下にあるlimbs.spline_tentacleはもっとタコの手とかの触手みたいな動きをします。

limbs.simple_tentacleというサブリグを追加するところ

編集モードで見ないとSamplesのメニューが出てきません。オブジェクトデータプロパティ > Rigify > Samplesにあります。

後で操作しやすいリグを作るため、ちゃんと名前をわかりやすくしておきましょう。

形が作れたら、近くのボーンにペアレントします。髪なので、顔にあるボーンにペアレントします。Keep Offsetでペアレントします。

Keep Offsetでペアレント

同様に猫耳用のlimbs.simple_tentacleを追加して、好きな長さにして配置します。

片方につけたら、名前をわかりやすいものに変更し、右クリックで
Names > Auto-Name Left/Right でLやRをつけます。つけたら、右クリックで今度はSymmetrizeでボーンを対称化し、両方のボーンを作ります。

猫耳用のlimbs.simple_tentacleを追加して、ボーンを対称化し、両方のボーンを作ります。

両方の耳のボーンの根本を、頭のボーンにKeep Offsetでペアレントします。

頭のボーンにKeep Offsetでペアレント
スポンサーリンク

サブリグのオプション設定(猫耳・髪)

サブリグのオプションを変更したいのでポーズモードに移動します。

さっき取り付けたサブリグの根本のボーンに、limbs.simple_tentacleというRig typeがついてるはずなのですが、消えていました。

たまに消えることがあって、リグ生成がうまくいかないときがあります。リグが生成できないときはこのRig typeの設定が消えてないかチェックしてみてください。

オプションに、Bone roll alignmentがあるので、xyzどれもオンにしておきます。(回転すると、子ボーンに行くほど回転度合いが大きくなる機構がどの回転軸でも効くようになります。)

その下のAssign Tweak CollectionはUI関係の設定です。使い方は後のセクションで解説しています。

両方の耳のボーンにも同じ設定をしておいてください。

サブリグのオプション設定(猫耳・髪)

しっぽのサブリグを追加する

今度はしっぽのサブリグを追加します。

編集モードに移動して、Samplesからspines.basic_tailのサブリグを追加します。

動物用のメタリグについてるしっぽ用のサブリグです。これも先端のボーンから何本増やしても大丈夫です。(最低2本必要です。)

Samplesからspines.basic_tailのサブリグを追加

名前を変更して、おしりのボーンにKeep Offsetでペアレントします。(近いところのボーンにペアレントします。)

Keep Offsetでペアレント

しっぽのサブリグのオプション設定

サブリグの設定を変更したいのでポーズモードに移動します。

Optionsxyzすべてオンにしておきます。これはlimbs.simple_tentacleBone roll alignmentとほぼ同じです。どの軸方向にも曲がるようになります。

spines.basic_tailにはConnect Chainというオプションもあって、チェックするとB-boneがペアレントしたボーンとつながるらしいですが、やってみたことないのでわかりません。

しっぽのサブリグのオプション設定

リグを(再)生成します

メタリグの設定は終わったので、Generate Rigか、Re-Generate Rigでリグを生成します。

問題なくリグが生成できたみたいです。

リグ生成エラーについて

ここでエラーが出ることもあるので、エラー文を読んで解決していきましょう。今までよくあったのは

Cannot Select target rig
リグ表示が非表示になってたり、選択不可になってるとき

Bone’tail’:Input to rig type to rig type must be a chain of 2 or more bones. Incorrect armature for type ‘chain_rigs’
しっぽのサブリグが最低でも2本のチェーンがいるよってお知らせしてくれてるエラー。サブリグの型から外れたときもエラーが出ます。

追加したサブリグのリグが出ないときはRig typeの設定が消えてる可能性が高いです。

問題なくリグが生成できた

動かしてみる

メッシュ → リグ の順に選択し、Ctrl + P 
With Automatic Weightsで自動ウェイトペイントでペアレントします。

自動ウェイトペイントでペアレント

しっぽの動き(動画)

髪、耳の動き(動画)

ウェイトがうまく乗ってませんが、とりあえず動きやリグは問題なくできているようです。

しっぽのspines.basic_tailと、髪のlimbs.simple_tentacleの違いですが、しっぽ用のサブリグの方が、しっぽの先にコントロールボーンがついてて見た目扱いやすいって感じです。

髪の毛や耳は根本の回転リグで操作することになりますが、これでも全然使えますね。

どのようなアニメをするかで使いやすいリグが変わってくるかもしれません。使いやすいサブリグを選んでみてください。

その他サブリグについてまとめた記事もありますので改造時の参考に見てみてください(検証途中の部分があります)↓

スポンサーリンク

UI設定も整えたいとき

せっかくリグを作ったので、UIもちゃんと表示させたい。UIとは、表示、非表示のボタンや、リグの色分けなど、わかりやすくする表示の設定です。

例えば、しっぽのリグのUIをきちんと設定してみます。

ボーンコレクションを作る

まずはしっぽだけのボーンコレクションを作ります。

ポーズモードで、しっぽのサブリグを全て選択してMキーを押して、+New Bone Collectionを押し、新しいボーンコレクションの名前を入力してCreateを押します。

オブジェクトデータプロパティのRigify > Bone Collection UIの中にTailのボーンコレクションが作成されました。

しっぽだけのボーンコレクションを作っているところ

カラーセットを割り当てる

次は、そのグループのリグを何色にするか、Color Set(カラーセット)を割り当てます。

Bone Collection UIの上のColor Setsというメニューの中に、今Rigifyが使用しているカラーセットが表示されています。Add Standardというボタンを押すと、自分の好きな色を追加することもできます。

そのグループのリグを何色にするか、Color Set(カラーセット)を割り当てます。

UI Layoutを決める

今度は、UI Layoutで、表示/非表示のボタンをどこに置くか決めます。

Bone Collection UIでしっぽのリグの入ったグループを選択し、下のUI Layoutの中の挿入したい列の三角のアイコンを押すと、そこにボタンが挿入されます。

他の方法として、例えばRootのグループを選択し、UI Rowの数値を変えることで、何行目かを変えることができます。同じ行のグループが2つあるとき、ボタンが横に2つ並びます。

UI Layoutで、表示/非表示のボタンをどこに置くか決めるところ

これで、リグを再生成すると、ちゃんとTailの表示/非表示ボタンができていて、赤い色で表示されるようになっています。

ただ、すべてのしっぽのリグが赤くなっていて、中間のtweakリグと回転用のリグがわかりにくくなっています。

次のセクションで、tweakリグを別グループにする方法をまとめます。

Tailの表示/非表示ボタンができているところ

Tweakのリグを違うグループにまとめたいとき

しっぽのtweakリグ用のボーンコレクションを作成しておきます。

Color SetUI Layoutも設定しておきます。

しっぽのtweakリグ用のボーンコレクションを作成して他のUI設定もしておく

ポーズモードでしっぽサブリグのRig typeのメニューから、Options設定を見ます。

Assign Tweak Collections の右のアイコンを押して、ボーンコレクションを割り当てられるようにします。しっぽのtweak用に作ったボーンコレクションを設定しておきます。

Rig typeのメニューのOptions設定でしっぽのtweak用に作ったボーンコレクションを設定しているところ

そしてリグを再生成すると、Teil tweakという表示/非表示ボタン、tweakリグを別のカラーにすることができました。

このように、自分で操作しやすいようにUIをきちんと設定しておくと、アニメーションをつけるときにとても使いやすくなりますね。

しっぽ用リグのUI設定を整えた画面
スポンサーリンク

Rigifyガイド

Rigifyについて書いた記事を紹介しているガイドです。基礎から応用、調整まで解説しています。

スポンサーリンク

参考チュートリアル

CGDive (Blender Rigging Tuts)さんのRigifyに関するチュートリアル、解説は本当に勉強になるのでぜひ見てみてください。

コメント

  1. Blender初心者 より:

    初めまして、いつも参考にしております。
    初歩的な事で申し訳ございませんが、質問があります。
    自分はVRChatにキャラクターを持っていきたいのですが、やはりRigifyを使用するのが良いのでしょうか?
    ヒューマノイドリグ?というのが良いとも聞いたのですが、違いなどが調べても分からず質問させて頂きました。
    キャラクターはVRChatに持っていく以外に、Blenderでアニメーションを入れて遊んでみたいとも思っております。

    • 管理人 管理人 より:

      初めまして。コメントありがとうございます。
      VRChatではそれ専用のボーンの組み方があるので、Rigifyそのままでいけるかは、ちょっとやってみたことがないのでわかりません。調整する必要があるかもしれません。
      簡単なキャラクターを作ってVRChatに持っていくという記事を書いています。https://blog.tenp-kukan.com/4813/
      このシリーズでキャラクターに人型の簡易なボーンをつけてVRChatにアップロードする過程を説明していますので良ければ参考にしてみてください。