服のウェイトペイントが上手く出来ない

  • このフォーラムに新しいトピックを立てることはできません
  • このフォーラムではゲスト投稿が禁止されています

投稿ツリー



前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 .2 | 投稿日時 2014/5/9 22:56
naotaro  新米   投稿数: 3
初めて投稿させていただきます。

服にもウェイトペイントを設定したのですが、上手くできず困っております。
ボーンを回転させた時に腕のメッシュは追随するのですが、服のメッシュが少しずれてしまいます。
具体的には添付したGIF画像のような状態です。
(画像クリックでGIF再生されるかと思います)


ボーンとメッシュを親子付けする時には[自動のウェイトで]で設定しました。

服のメッシュもボーンの動きに追随させるにはどうしたら解決できるでしょうか?

初歩的な質問ですが、宜しくお願いします。

blenderファイル


投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2014/5/9 23:57
yaos  半人前 居住地: 島根  投稿数: 29
はじめまして。
blendファイルを拝見しました。
とりあえず解決方法はアーマチュア−のBone(boneの名前)のDeformのチェックを外せば治りました。
下の画像を参考にして下さい。
画像

今回の場合、アーマチュア−のBoneのウェイトが服の腕部分にもかかっていることが原因で、服が腕部分のBone(Bone.002_LとBone.002_L.001)に追従しない現象が起きています。
なので根本的に修正しようとすると、アーマチュア−のBoneのウェイトを該当する腕の部分で「0」にしてやればよいです。
画像のようにBoneに変形機能を付加しないことでメッシュを変形させることができないようにすることもできます。
Rigを組んでいくと変形だけでなく、別のBoneを制御するためのキーとして動作させるだけのBoneが必要になったりします。こうしたBoneは変形機能を全く必要としないので画像のようにDeform(変形)機能を初めからOFFにしたりします。

<以下はウエイトペイント時に参考にしてみてください>
・ウエイトモード中にキャラクターのどこでもいいですが「shift+左クリック」してみるとクリックした部分にかかっているウェイトリストが見ることができます。
・エディットモード中に「N」で情報表示させ、その中に「Vertex Weights」という項目があります。この中に選択されたVertexにどのVertexGroupがどのくらいの強度でかかっているか数値で見ることだ出来ます。各BoneのウェイトはVertexGroupとして表示されています。
・ウェイトを設定したりアーマチュア−を組むときはポーズモード中にProperties > Armature > Display の中の「Name」にチェックを入れて、Bone名を常に表示させて編集を行ったほうが、作業がやりやすいと思います(※個人的感想)
投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2014/5/10 10:46
naotaro  新米   投稿数: 3
すぐに回答していただきありがとうございます。
Deform(変形)機能というものを知りませんでした...。

ウェイトペイント時のアドバイスなど
丁寧に解説していただき助かりましたー!

投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2014/5/10 11:26
完全無欠猫  長老 居住地: 兵庫  投稿数: 750
質問者が納得されているようなので、改めて書く必要もないかと思いましたが、少しだけ書きます。

質問をされる場合には、使用OS、Blenderバージョン、必要ならばその他環境を明記した方がいいです。
(不具合、サポート状況などが異なる、またバージョンによつてはBlendファイルが正常に読めない場合もあります)

Blenderの自動Weight機能はバージョン、リリースされたバイナリによって必ずしも同じ結果を返さないと思ったほうが無難です。
人間は視覚的に物を捉えて相互関係に基づいて考えようとします。
同じような位置にあれば同じように振舞うはずだと・・。
しかしBlenderはプログラムなのでデータに基づいて計算します。
似たような位置にあるから同じように扱うとは限らないということです。
特に自動Weightの精度は以前からあまり高いとは言えません。
この言い方は語弊があります、これは相互関係を認識した上で思い通りにはならないことが多いという意味です。
対称であるのに同じようにweightを配さないとかよくあることです。
これらの経験から自動Weightを過信せずに、どのようにWeightが設定されているかを確認することが必要です。

不可視の部分が常に見えないのであれば削除するのもよく使用される方法です。

意図しない結果になってる部分はWeightPaintで補正する必要があります。
今回のように同一Object内で被さって確認しづらい場合はWeightPzintのマスク機能を使ってPaintするといいと思います。
使い方がちょっと分かりにくいと思いますが調べてみて下さい。
要約だけ書いておきます。
マスクモードに入ると選択されたFaceをHキー(設定により異なる)押下で被っているものを非表示に出来ます。
(元通り表示する場合はALT+H)
マスクモードでWeightをPaintするにはPaintする箇所が選択された状態になっている必要があります。
選択方法はRMB又はCircle選択Box選択などを使用できます。

今回の件には該当しませんが、Weightの近似コピーが可能になるAddonもあるので参考にするといいと思います。
但し、こちらは使用可能なBlenderバージョンに制限があります。
Bone Weight Copy
別のObjectにWeightを近似複写することが出来ます。
コピーしたいObjectに対して近似位置にあるコピー元のWeightを元にWeightが設定されます。
素地となるObjectのWeightを上に被せるObjectに写取る様な場合に便利です。
投票数:3 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿.1 | 投稿日時 2014/5/10 21:21
naotaro  新米   投稿数: 3
すいません、失念しておりました。

次回からは自分の環境を書く様にします。

Weightの近似コピーできるAddonは知りませんでした。
ご指摘ありがとうございました!

投票数:0 平均点:0.00
前の投稿 - 次の投稿 | 親投稿 - 子投稿なし | 投稿日時 2014/5/16 12:46
完全無欠猫  長老 居住地: 兵庫  投稿数: 750
あっ、それを紹介しておいてなんですが・・・。
実はデフォルトでそういう機能が2.65で実装されているのを私も知りませんでした。

Transfer weightsという機能があります。
Weightが設定されたオブジェクトを元にして、それに近似する位置のWeightを計算して別のオブジェクトに設定する機能です。
そのAddonと同等の機能だと思います。
どの程度の違いがあるのかは試していないのでわかりません。
しかしこちらは最新版のBlenderでも使用可能です。

使い方は次の通りです。
Weightの設定されたObjectを用意する。
WeightをコピーしたいObjectをコピー元のObjectに関連付けられた同じArmatureに関連付ける。
この時空のVertex Groupで作成するといいと思います。
次にObjectモードで元になるObject、コピー先のObjectの順に選択してWeight Paintモードに入ります。
WeightsメニューのTransfer Weightsを選択すると、近似位置のWeightが計算されて設定されます。
投票数:2 平均点:10.00

  条件検索へ


ログイン

ユーザ名:

パスワード:



パスワード紛失

クイックリンク

2021/07/01版
●Blender.org
BlenderFoundation
- Blenderのダウンロード
- 公式チュート等
- 公式マニュアル(和訳)

●ニュース(英文)
BlenderNation

●Blenderコミュニティ
blenderartists.org

●Blender Q&A
- Blender Stack Exchange

●テストビルド
Buildbot(自動生成)


●開発関連
公式開発サイト
Blender開発blog
Blender Wiki