読者です 読者をやめる 読者になる 読者になる

伊藤覚留帳

伊藤のブログ謙メモ帳です。

Blender:ウェイトをつける

f:id:ito144:20170413091029p:plain

BlenderでのMMDモデル用のざっっっくりとしたウェイトの付け方。とても文系。
かなり長い記事になりましたので流し読みして必要そうなところだけ見てね。

ウェイトって何か

前置き。この頂点はこのボーンの動きに◯%の気合でついていってね!っていう指示のようなものです。

f:id:ito144:20170413041630p:plain

例えばこの立方体の8つの頂点全部に「上」ボーンに100%ついていってねという設定にすると

f:id:ito144:20170413041726p:plain

「上」ボーンの動きにピッタリくっついて動きます。

f:id:ito144:20170413042018p:plain

頂点全部に「上」ボーンに50%、「下」ボーンに50%ついていってねという設定にすると

f:id:ito144:20170413042103p:plain

「上」ボーンの動きに50%ぐらいでついていってくれます。

f:id:ito144:20170413044938p:plain

上の頂点に「上」ボーン100%、下の頂点に下」ボーン100%の設定にすると

youtu.be

こんな感じ。

f:id:ito144:20170413045446p:plain

真ん中の方で曲げたい時は曲げたいところに切れ目を入れます。

f:id:ito144:20170413045638p:plain

よくみるような感じになってきました。こんなイメージでウェイトを付けていきます。前置き終わり。

オブジェクトとアーマチュアを関連付ける

① オブジェクトを右クリックで選択
② 続いてShift押しながらアーマチュアを右クリックで選択。
③ ショートカット「Ctrl+P」でパネルを出して「アーマチュア変形>空のグループ」を選択

youtu.be


これで親子関係がつきました。関連付けはできたのですが、ウェイトがついてないのでボーンを動かしても頂点は動きません。

    ボーンの動かし方

    f:id:ito144:20170413052857p:plain
    ① ポーズモードに切り替え
    ② 回転操作にチェック
    あとは右クリックでボーンを選択して回転ハンドルを動かしてください。

f:id:ito144:20170413054450p:plain

上の設定でモデファイアにアーマチュアモデファイアが追加され、頂点グループにボーンの名称が追加されました。
頂点グループに入ってないとウェイトをつけることができないので、途中でボーンを追加したときは「アーマチュア変形>空のグループ」で頂点グループに入れてあげてください。

ウェイトを設定する

前置きで最後に設定したウェイトと同じ設定にしてみます。

f:id:ito144:20170413055127p:plain

まずは「上」ボーン100%の説明
① 編集モードで「上」ボーン100%で設定したい頂点を選択する
② 頂点グループにの「上」を選択する
③ ウェイトが1.000になっているのを確認する
④ 「適用」を押して確定させる

f:id:ito144:20170413061038p:plain

編集モードで上100%に設定した頂点を選択すると、右パネルに頂点グループという項目が出てきてウェイトの設定具合がわかります。

「下」100%も同じようにしてウェイトを設定します。

f:id:ito144:20170413061539p:plain

50%50%の説明
① 設定したい頂点を選択
② 上の説明の②③④を「上」「下」ともに繰り返す
③ 右パネルにどっちも1.000で設定されているので合計して1になるようにいずれかの方法で数値を調整する
  1,手入力で0.5にする(数値部分を左クリックで手入力、ドラッグでも変更できます)
  2,そもそも上の②の時に0.5で適用する
  3,「ノーマライズ」ボタンを押すと自動で合計が1になるように割り振ってくれます。複数の頂点を選択している場合は「コピー」ボタンを押して確定させてください

これでウェイトがついたのでボーンを動かすと頂点が動いてくれます。

人体モデルにウェイトを塗る

とりあえず上では単純な構造で説明しましたが、人体もこんな感じでウェイトを塗っていきます。めんどくさい!!!塗りたくない!!!

f:id:ito144:20170413063913p:plain

ウェイトの塗り方には色々方法がありますが、上みたいなややローポリ気味からノーマルの間のMMDモデルなら上の方法でぽちぽち塗っていくのが一番早くてキレイに塗れる気がします。
(ただし、どこにどんな感じでウェイトのせたら良いのか見当がついている人の場合に限る。)

modelsakusei.jugem.jp


こちらのサイトはPMDエディタでのウェイトの塗り方ですが、こちらの手順で塗っていけばOKです。
(メタセコイアでの解説ではありますが大変わかりやすく参考になるので、はじめてモデル作る方はサイト様一通り目を通してもらうとどんな作業をするのか想像がつきやすくなると思います。お世話になりました。)

www.nicovideo.jp

こちらのモデルを参考にさせてもらってウェイト設定するのもおすすめです。ウェイト設定図すごい。匠。


ミラーモデファイアやXミラーが設定されている場合、左右どちらかを設定すれば片方も設定されてます。

ブラシでウェイトペント

使い方はPMXエディタでウェイトを塗るときとほぼほぼ同じです。PMXエディタに慣れてる人はこれが使いやすいかも。

f:id:ito144:20170413100048p:plain

① ウェイトを塗りたいオブジェクトを選びます
② ウェイトペイントモードに移動します
③ ショートカット「Z」でワイヤー表示モードに移動すると色がわかりやすいです
④ 左パネルからブラシの設定をします。筆圧が邪魔だったら有効を外す
⑤ 自動正規化にチェックを入れます
⑥ 塗りたいボーンを右クリックで選択して塗ります
⑦ 見える範囲の表側と見えない裏側を同時に塗りたい時は上の画像の⑦のボタンを有効にしてください

youtu.be

Crtl+左クリックで頂点のウェイトの値をブラシにコピーすることができます。

マスク

ウェイトペントで塗る頂点を制限します。

① 編集モードで塗りたい頂点を選択

f:id:ito144:20170413105604p:plain

② ウェイトペイントモードの移動して下の方の頂点マスクボタンを有効にする。色がついてる頂点が塗れる頂点です。

以下私はこう思ってるけど他にうまいやり方があるかもしれない事項

  • ウェイトペイントモードに移動してから頂点選択してもいいけど、ボックス選択とか輪投げ選択とかしかできなかった気がする
  • 面マスクボタンはだいたい同じ機能だけどショートカット「H」で編集モードと同じように面を非表示に出来る。ただし裏側塗れない?
  • マスク中は右クリックではなくCtrl+右クリックでで塗りボーンの移動ができる

f:id:ito144:20170413110922p:plain

編集モードで非表示にした(頂点選択してからショートカット「H」)頂点は、ウェイトペイントモードに移動してマスクを有効にしても表示されません。

自動ウェイトでちゃちゃっと塗る

右も左も何もかもわかんないよ!という時は自動ウェイトで塗ってしまうという手もあります。
自動ウェイトで設定するとBlendeがなんかいい感じにウェイトを塗ってくれます。が、もちろん上手く塗ってくれないことも多々あります。

f:id:ito144:20170413065527p:plain

アーマチュアとオブジェクトの関連付けのところから説明をはじめます。

① オブジェクトを右クリックで選択
② 続いてShift押しながらアーマチュアを右クリックで選択。
③ ショートカット「Ctrl+P」でパネルを出して「アーマチュア変形>自動ウェイト」を選択

これでウェイトがつきました。
次に余計なところについたウェイトを削除します。

f:id:ito144:20170413070422p:plain

オブジェクトを右クリックで選択して頂点グループの項目から「全ての親」「センター」「グループ」「両目」「足_IK」「つま先_IK」を選択してマイナスを押して削除します。

f:id:ito144:20170413070859p:plain

① 編集モードに移動してショートカット「A」で頂点を全選択
② 左のパネルのウェイトツール>ウェイトの制限を押す
③ 制限数を3ぐらいにする
④ ウェイトツール>すべてを正規化を押す

  • ウェイトの制限:頂点ごとのウェイトグループの数を指定した上限値に制限します。制限を満たすまで、一番低いウェイトから先に取り除かれます
  • すべてを正規化:それぞれの頂点について、全頂点グループのウェイトの合計が必ず1になるようにします

ウェイトが設定できました。試しに足ボーンを動かしてみます。

f:id:ito144:20170413072217p:plain

ああ~~~。膝はなんかいい感じに塗ってくれたけど靴が~~~。

靴のウェイトをなおす必要があるようです。
で、靴のウェイトは何のボーンに何%で設定したら良いのか?なんですが、上で紹介させてもらったサイト様やローポリ関節モデル様のウェイト設計図を確認してもらうと足首100%であることがわかると思います。靴の頂点を全部選択して足首100%に設定しましょう。

これを繰り返し繰り返してウェイトの修正を行っていきます。思わぬところで思わぬ感じにウェイト塗られてたりするので修正にすごい時間かかる。

別ファイルにして戻ってこれるようにしてから一回自動ウェイトで塗ってみて参考にするのもいいかもしれない。

グラデーション塗り

髪の毛を塗る時に使ってます。ハイポリとかもこれ使うんです?今回は前髪のウェイトを設定してみます。

f:id:ito144:20170413075045p:plain

まず塗りたいオブジェクトを1つにしておきます。

f:id:ito144:20170413075627p:plain

こんな感じで塗りたい。

① まずはグラデーション根本の頭100%で全頂点を設定します

f:id:ito144:20170413080125p:plain

② グラデ-ション先である前髪ボーンをポーズモードに移動して選択します

f:id:ito144:20170413080209p:plain

③ 前髪のオブジェクトを右クリックで選択します。自動でオブジェクトモードになるはず

f:id:ito144:20170413080620p:plain

④ ウェイトペイントモードに移りウェイトツール>ウェイトグラデーションを押します

f:id:ito144:20170413080820p:plain

⑤ カーソルが十字になったらグラデ始まり(前髪の下の方)からグラデ終わり(前髪の付け根の方)までぐぐ~っとドラッグします。

⑥ 右パネル>ウェイトツール>すべての正規化を押して完了です

ウェイトの修正

f:id:ito144:20170413084051p:plain

ポーズモードでポーズを変更させていい感じに動いてくれるか確かめながらウェイトを修正していきます。
ウェイトを修正するだけではどうにもならないこともあるので頂点も一緒に修正します。

f:id:ito144:20170413084530p:plain

例えばポーズモードで動かしたら上のように変な動きをするはぐれ頂点が出てきたとします。(いわゆるホメ頂点というやつ?指示がちゃんといってなくてサボってる頂点)
こいつを修正したいと思います。

手入力で修正する

f:id:ito144:20170413085924p:plain

頂点を選択したいので編集モードに入るんですけど、デフォルトのままだとウェイト設定前の状態に戻ってしまいます。これだとはぐれ頂点がどこの頂点なのかわかりづらいので、アーマチュアモデファイアの設定を変更します。

f:id:ito144:20170413090246p:plain

アーマチュアモデファイアの目玉の横の2つのボタン有効にしてもらうとポーズがついたまま編集モードに移動することができます。
はぐれ頂点を選択して修正します。

f:id:ito144:20170413091029p:plain

ちなみに目玉の横を有効にしただけだとこんな表示になります。こっちは頂点の位置を修正をするときに便利。

youtu.be

なんかいい感じになるまでごにょごにょ動かす。

ブラシのウェイトペイントで修正する

youtu.be

そこまで複雑じゃない場所のウェイトならウェイトペイントも楽。

モデル破綻確認用モーション

ああ~~...

終わりに

f:id:ito144:20170413093331p:plain

ウェイトしんどいですが、がんばりましょう。一度作ったら二人目から随分楽になります。同じような服装ならそのまま使いまわせます。慣れてきたら裸の素体モデルを作るんだ。

最後の方力尽きてきてだんだん適当になっていってゴメンよ。