この記事では、頂点ウェイトとは何なのか、そしてどうやって編集するのかについて解説します。 編集方法については、3D Viewportのサイドバーでの編集と3D Viewportでのウェイトペイントモードでの編集の2通りについて解説します。
頂点ウェイトとは、それぞれの頂点が持っている『頂点グループからの影響度』のことです。 頂点グループについては、知っておきたい機能 > モデリング > モデリング支援 > 頂点グループについてで説明していますのでそちらを参照ください。
頂点ウェイトは、メッシュのアーマチュア変形 / シェイプキー変形 / モディファイア変形に深く関わっています。 例えばアーマチュア変形ではボーンを曲げるとメッシュが変形しますが、その変形量は頂点ウェイトによって決まります。 ボーン "Head" を動かした場合の影響が、頂点Aには 0.9、頂点Bには 0.04 という具合に設定されているのです。
そのため、頂点ウェイトが正しく設定できていないと、メッシュの変形が不自然になってしまいます。 腕を上げると肩が不自然に凹む、というような状況です。
頂点ウェイトを適切に編集することで、メッシュの自然な変形を実現することができます。
では、頂点ウェイトの確認方法と編集方法を説明します。 まずは、以下のファイルをダウンロードしてください。 本ウェブサイトで用意したクマのメッシュとアーマチュアを含むファイルです。
ダウンロードした "bearwithrig.zip" を展開すると "bearwithrig.blend" というファイルが作成されます。 トップバーのプルダウンメニューの"File" -> "Open..."を実行して "bearwithrig.blend" を開いてください。
では、まず頂点グループの一覧を見てみましょう。 オブジェクトモードでクマのメッシュを選択します。
上図のようにオブジェクトモードでクマのメッシュを選択します。
では、頂点グループの一覧を見ましょう。
上図のようにPropertiesのObject Data PropertiesタブのVertex Groupsパネルに頂点グループの一覧が表示されます。 見ての通り、頂点グループは存在していません。
では次に、クマのメッシュとアーマチュアの間にアーマチュア変形の親子関係を構築します。 クマのメッシュの選択はそのままで、アーマチュアを追加選択してください。
上図のようにアーマチュアを追加選択します。 これで、クマのメッシュとアーマチュアの両方が選択された状態になりました。
クマのメッシュとアーマチュアの両方が選択されていることを確認し、キーボードのCTRL+Pを押します。
上図のように"Set Parent To"というタイトルのメニューが表示されますので、"Armature Deform" -> "With Automatic Weights"を実行します。
これで、クマのメッシュとアーマチュアの間にアーマチュア変形の親子関係が構築されました。 クマのメッシュはアーマチュアに影響されて変形するようになっています。
ではここで、もう一度頂点グループの一覧を見てみましょう。 オブジェクトモードでクマのメッシュのみを選択してください。
上図のようにオブジェクトモードでクマのメッシュのみを選択します。
上図のように頂点グループの一覧に頂点グループが追加されています。 これらの頂点グループは、"With Automatic Weights" による自動的なウェイト計算が行われた際に作成されました。
なお、"With Automatic Weights" による自動的なウェイト計算では、頂点グループはアーマチュアのボーンと1対1で対応しています。 1本のボーンにつき、1つの頂点グループが同じ名称で作成されます。
では次に、各頂点の頂点ウェイトを確認してみましょう。 なお、頂点ウェイトはPropertiesではなく3D Viewportのサイドバーで確認します。 キーボードのTabキーを押してエディットモードに切り替えてください。
上図のようにエディットモードに切り替えます。
サイドバーを展開するため、3D ViewportでキーボードのNを押します。
上図のようにサイドバーが表示されますので、Itemタブに切り替えます。 なお、頂点が1つだけ選択された状態でなければ頂点ウェイトは表示されません。
というわけですので、頂点を1つだけ選択しましょう。
上図のように頂点を1つだけ選択します。
上図のようにVertex Weightsパネルが追加され、頂点ウェイトが一覧で表示されます。 上図の例では、頂点グループ "Head" からのウェイトが 0.915、頂点グループ "Shoulder_L" からのウェイトが 0.054 だということがわかります。
このように、3D Viewportのサイドバーで各頂点の頂点ウェイトを確認することができます。 また、ここでウェイト値を修正することもできます。 ただし、みなさんもおそらく感じた通り、この方法では各ボーンの影響を直感的に理解することはできません。
そこで便利なのが3D Viewportのウェイトペイントモードです。 ウェイトペイントモードは、頂点グループのウェイトを色で確認および編集するための機能です。
では、さっそくウェイトペイントモードに切り替えましょう。
上図のようにモードをウェイトペイントモードに切り替えます。
上図のように3D Viewportの表示が変化し、クマのメッシュが青色から赤色で塗り分けられます。 青色がウェイト 0.0(0%) を表しており、赤色がウェイト 1.0(100%) を表しています。
なお、右足が赤いのは現在は右足の頂点グループが選択されているからです。 ウェイトペイントモードでは、選択中の頂点グループに対するウェイトが色で塗り分けられます。
ではここで、ペイント方法について説明しておきます。 ウェイトペイントモードでは、筆で塗るようにウェイトを設定することができます。 マウスの左ボタン()を押すことで、マウスカーソルの位置に色を塗ることができます。
なお、ペイント用のツールには様々な種類があります。
上図のようにツールバーにはドローツール・ぼかしツールなどのペイント用のツールが用意されています。 また、ヘッダでは選択中のツールの設定を変更することができます。
右クリックで表示されるパネルから設定を変更することもできます。 3D Viewport上でマウスの右ボタン()をクリックしてください。
上図のようにパネルが開きます。 このパネルでも、選択中のツールの設定を変更することができます。
ではここで、頂点グループ "Head" のウェイトを確認してみましょう。
上図のように頂点グループの一覧から "Head" を選択します。 3D Viewportの表示はどう変化するでしょうか。
上図のように3D Viewportのクマのメッシュの塗り分けが変化します。 今までは右足が赤色で塗られていましたが、今回は頭部が赤色で塗られています。 これはもちろん、頂点グループの一覧から "Head" を選択したため、頂点グループ "Head" のウェイトの表示に切り替わったというだけの話です。
先ほども説明したように、頂点グループとボーンは1対1に対応しています。 よって、ボーン "Head" の影響度で塗り分けられている、とも言えます。
では、頂点グループ "Head" のウェイトを調整してみましょう。 現状では、頭部に大きな影響を、体の上部に小さな影響を与えています。 これを変更し、足先にも大きな影響を与えてみましょう。 つまり、足先を赤色で塗ります。
では、足先をマウスの左ボタン()でドラッグしてください。
上図のように足先が赤色で塗られます。 これで、頂点グループ "Head" が足先にも影響を与えるようになりました。
では、ポーズをつけてみましょう。 ただし、ウェイトペイントモードではポーズをつけることはできません。
まずは、オブジェクトモードに切り替えてアーマチュアを選択します。
上図のようにオブジェクトモードでアーマチュアを選択します。
では、アーマチュアを選択したままポーズモードへ切り替えましょう。
上図のようにポーズモードに切り替えます。
上図のようにボーン "Head" を選択します。 では、このボーンを傾けてみましょう。
上図のようにボーンを傾けます。 見ての通り、足先も変形してるのがわかります。 頂点グループ "Head" が足先にも影響を与えるようにペイントしましたから当然の結果です。
では、CTRL+Zでボーンの回転を戻してください。
最後に、ウェイトペイントモード中にポーズをつける方法を解説します。 大切なことは、メッシュとアーマチュアの両方を選択することです。 しかも選択の順序も重要で、最初にアーマチュアを選択し、次にメッシュを選択します。
上図のようにオブジェクトモードでアーマチュアを選択します。
次にクマのメッシュを追加選択します。
上図のようにクマのメッシュを追加選択します。
では、この選択状態のままウェイトペイントモードに切り替えてください。
上図のようにウェイトペイントモードに入ります。 そしてここで注目すべきなのが、ボーン "Head" がポーズモードで選択されていることです。 ボーン "Head" だけが青色で描かれていることからそれがわかります。
ではここで、上腕(右側)のボーンを選択してみましょう。 ただし、マウスの左ボタン()でクリックしないでください。 クリックしてしまうとペイントされてしまいます。
ウェイトペイントモードでのボーンの選択は、CTRL+マウスの左ボタン()でのクリックです。
上図のようにCTRLキーを押しながら、上腕(右側)のボーンをクリックしてください。
上図のように上腕(右側)のボーンが選択されます。 このように、ウェイトペイントモード中はCTRL+マウスの左ボタン()のクリックでボーンを選択します。
では上腕を傾けて腕を上げてみましょう。
上図のように上腕(右側)のボーンを傾けます。 このように、ウェイトペイントモード中でもポーズをつけることができます。
最後に、ボーンの追加選択の方法を説明しておきます。 SHIFTキーを押しながらマウスの左ボタン()でクリックすることで、ボーンを追加選択することができます。
上図のようにSHIFTキーを押しながら、肩(右側)のボーンをクリックしてください。
上図のように肩(右側)のボーンが追加選択されます。 このように、SHIFTキーを押すことで追加選択になります。 なお、CTRLキーを同時に押す必要はありません。 SHIFTキーだけ押せばいいです。
頂点ウェイトは、それぞれの頂点が持っている『頂点グループからの影響度』です。 頂点ウェイトは3D Viewportのサイドバーで確認および編集することができますが、直感的ではありません。
3D Viewportのウェイトペイントモードであれば、直感的に確認および編集することができます。 ウェイトペイントモードでは、ウェイト 0.0 が青色で、1.0 が赤色で描かれます。
アーマチュアを先に選択し、続けてメッシュを追加選択することでウェイトペイントモード中にもポーズをつけることができます。 なお、ボーンの選択はCTRL+マウスの左ボタン()のクリックです。