ANTNEST BLOG

主にモデリングとかVRC関連

【アバター首接合】3. アーマチュア・ウェイトの調整

 Algo_Ayugonです。

 この記事は、「Blenderアバターの首を綺麗に接合する」ための6つの記事のうちの3つ目です。

 目次記事↓

antnestin.hatenablog.com

 

「3. アーマチュア・ウェイトの調整」目次

 

3-1. 不要なボーンを削除する

 「アーマチュア」を統合する前に、頭部と素体それぞれの不要な(重なり合っている)「ボーン」を削除します。ここでは、所謂Headボーン以降(頭から先)は頭部モデルのものを使用することにします。

 まず、素体の「アーマチュア」のHead, LeftEye, RightEye(ある場合は髪ボーン等も)を「編集モード」で選択して【X】【Delete】で削除します。

f:id:antnestin:20210923230311p:plain

素体のHead以降の「ボーン」を削除。

 同様に頭部側のアーマチュアも「編集モード」でNeck以下のボーンを消します。

f:id:antnestin:20210923230555p:plain

頭部側ののNeckや身体の「ボーン」も削除。
(スクショの時期的に身体のメッシュが残ってますが実際はこの段階では無いはずです)

 

3-2. アーマチュアを統合する

 次に、「オブジェクトモード」で、頭部モデルのアーマチュア、素体のアーマチュアの順に同時選択し、【Ctrl】+【J】で統合します。

f:id:antnestin:20210923230852p:plain

この状態で【Ctrl】+【J】

 

 NeckボーンとHeadボーンを親子関係にします。アーマチュアを選択して「編集モード」に入り、Headボーン(頭部モデルによっては違う名前かもしれません)を選択します。右のタブのうち「ボーンプロパティ」(骨のアイコンのタブ)を開き、「関係」から「ペアレント」をNeckに設定します。

f:id:antnestin:20210923230944p:plain

親子関係になったボーン同士は点線で結ばれます。

 

3-3. 頭部モデルをアーマチュアに関連付ける

 次に、頭部モデルをアーマチュアに関連付けしなおします。

 Blenderではアーマチュアとメッシュの関連付けは「アーマチュアモディファイアー」によって行われています。「モディファイアープロパティ」(スパナとか工具みたいなアイコン)を選び、「アーマチュアモディファイアー」のオブジェクトの参照が空欄になっているところを選択し直します。修正すると、モディファイアー名が赤い警告になっていたところが正常になります。

f:id:antnestin:20210926153454p:plain

「アーマチュアモディファイアー」の参照を修正する

 

 頭部のオブジェクトの全てに対してこれを行ってください。

(※3-2で、アーマチュアの選択順が逆だと、素体の方が参照切れを起こしているかもしれません)

 

ex. ポーズモードで確認してみる

 ここまでできたら、「ポーズモード」に入って一度曲がり具合を確認してみましょう。「ポーズモード」への切り替え方は2種類くらいあります。

 

「①アーマチュアを選択した状態で左上のモード切り替えタブから選ぶ」

「②通常右上にある「アウトライナー」から「ポーズ」と書かれた所をクリックする」

 

のどちらか好きな方で「ポーズモード」に入ってください。

f:id:antnestin:20210923231511p:plain

①か②で「ポーズモード」に入れます。

 

 NeckやHeadを選択して、【R】キーで動かしてみます。接合部に隙間が空いてしまうかと思いますが、3-4で調整します。ここでは、頭部がNeck, Headボーンにきちんと追従して動いているかどうかを確認してください。

f:id:antnestin:20210923231617p:plain

とりあえずOKな例

 

 動かした時に、何かのオブジェクトが取り残されてしまっていたり、その他変な動き方をする場合、次のことが考えられますので、確認してください。

 

①頭部オブジェクトが統合後のアーマチュアに関連付けられていない

②Headの「親」がNeckになっていない

③そもそも頭部モデルの頭のボーンの名前が「Head」ではなかった(素体モデル側の頂点グループ「Head」の名前を同じ名前に変えて対処します。機会があれば別記事で書こうと思っています)

 

 ポーズを変えて遊んだ後は、ポーズモード中で戻したいボーンを選択した後に「ポーズ」メニュー→「トランスフォームをクリア」→「全て」で初期ポーズに戻しておきましょう。

f:id:antnestin:20210923231809p:plain

ポーズを動かした後はちゃんと戻しましょう。

 

3-4. ウェイトを調整する

 ボーンを動かしたときに出来てしまう隙間の対処をします。

 接合部の頭部の頂点と素体の頂点は、「2. 接合部の頂点の調整」でスナップ機能を使って位置を合わせてあります。なのでそれらの「頂点ウェイト」の数値が全て一致していれば、同じように動き、隙間はできなくなるはずです。

 接合部の位置にも寄りますが、ここでは接合部の頂点は全て「Headに1、それ以外は0」のウェイトを割り当てることにします(他の配合でも良いですが、合計は1になるのが望ましいです)。

 

 まず頭部のウェイトの様子を確認します。「ポーズモード」の状態で、頭部オブジェクトを選択します。すると、「ポーズモード」で且つ「それ以外のモード」のような状態にすることができます(できない場合、「編集」→「オブジェクトモードをロック」にチェックが入っているので、外してください)。

f:id:antnestin:20210923232529p:plain

「オブジェクトモードをロック」のチェックを外し、「ポーズモード」の状態で頭部オブジェクトを選択。

 

 次に、左上のモード選択から「ウェイトペイント」を指定します。

f:id:antnestin:20210923232558p:plain

「ウェイトペイントモード」に移行してウェイトの様子を確認する。

 

 「ウェイトペイントモード」で「頂点ウェイト」を”塗る”こともできるのですが、下手に触ると事故が多発するので、ここでは見た目でウェイトの様子を確認するだけにしておきます。この「ポーズモードで且つウェイトペイントモード」の状態では、【Ctrl】を押しながらボーンを選択することができ、そのボーンに対応した「頂点ウェイト」を色で確認することができます。 

 このモデルの頭部は、基本的に「Headに1(赤)」が割り振られていますが、接合部付近はNeckにも少し割り振られているようです(黄~緑)。接合部付近も「Headに1、それ以外に0」にしていきましょう。

 

 

【Tab】を押すか、左上のタブから「編集モード」に入り、接合部付近の頂点を選択します。

※このモデルの場合は頭部全てが既に「Headに1」であることが分かったので全選択をしていますが、モデルによってはそうではない場合もある(特に目の付近)ので、その場合は接合部付近のみを手動で選択してください。

 

 そして、右のメニューの三角形のボタンのメニュー(オブジェクトデータプロパティ)の「頂点グループ」の欄でHeadを選択し、「ウェイト」に1.000を入力して「適用」を押します。

 もし「適用」ボタンがグレーアウトして押せない場合、その「頂点グループ」にロックがかかっているので、鍵のようなアイコンをクリックしてロックを解除してください。

f:id:antnestin:20210923232931p:plain

Headには1を割り当てる

 

 同様に、そのまま「頂点グループ」の欄でNeckを選択し、「ウェイト」に0.000を入力して「適用」を押します。(もしかしたらChest等にもウェイトが入っているかもしれないので、その場合はそこにも適用します)

f:id:antnestin:20210923233013p:plain

Neckには0を割り当てる

 

 同じことを素体側にも行ってください。

 

 曲げた時のガタつきや曲がり方が気になる場合は、「ウェイトペイントモード」の「ぼかし」でぼかしたい頂点をなぞってください。このとき、接合部の頂点には触らないように気を付けてください。

f:id:antnestin:20210923233042p:plain

「ぼかし」ブラシで滑らかに。

 

 ここまで上手くいっていれば、曲げた時にも裂け目ができないはずです。

f:id:antnestin:20210923233120p:plain

曲げた時にも綺麗になるようなった。

 

 「3. アーマチュア・ウェイトの調整」はこれで終わりです。次は「法線」を調整して、影の入り方が滑らかになるようにします。

antnestin.hatenablog.com