MMDメモとか

MMDモデルのモデリング作業メモとかだけまとめた物です。基本放置。

MMDモデルの関節のウェイト破綻について

ここ数年作ったモデルで肘の関節が破綻していることがあるので、その修正方法です。

 

派手に破綻している状態の画像がないので説明のみになるのですが、

これは肘を曲げた時に一部がびやっと変な形に飛び出していたり、PmxEditorで躍らせた時と違う形になっている場合の破綻になります。

毎回起こるわけではなく、時々起こります。一応、肘が飛び出さないようにウェイトは塗ってあります。

PmxEditorで見た時に破綻はないけど、MMD持っていくと破綻している。という状態です。

下記の画像は、同じモーションで同じフレームの画像になります。

左の画像では破綻しておらず、服の肘は綺麗な形になっています。真ん中と右の画像はMMDでの画像です。

右の画像で服から肘が飛び出しているのがわかります。真ん中の画像は肘部分のワイヤフレームですが、左の画像と違って、服の肘部分が途中で陥没しているのがわかると思います。

これはウェイトモードをSDEFというモードで塗っている場合に起こります。

丁度、左の画像の紫色で表示されている部分です。

PmxEditorの画面の下にmodoというタブがあるので、そこからweightType(T)という項目を押すと、上の画像の左のような色分け表示に切り替わります。

原因が何なのかはわからないのですが、時々こういうことが起こります。それまで特に問題なかったのに、いきなり肘が爆発したりですね…。

服の場合は中の腕の材質を分離して非表示にしたりモーフで縮小&非表示で見えなくすればいいのですが、袖のない衣装で腕そのものが破綻していると分離して隠すわけにもいかないのですよね。

 

修正方法ですが、PmxEditorで出来ます。

 ①モデルをPmxEditorに読み込んで、PmxViewの右にTというアイコンをクリックします。

するとTransformViewが開きます。

②左上にあるファイルを押して、現在の形状で保存を選んで別名保存してください。

これで終わりです。

保存したモデルをMMDに読み込んで、モーションを流し込み、貫通していた箇所の確認をしてください。

ウェイトのSDEFモードが原因で破綻をしていた場合は、TransformViewで保存するだけで治るんですよね。形状変形させたモデルを保存するので、ウェイト状態が上書きされてるのかな? とかってに考えたりしてますけど…。


自分のモデルでこの破綻を確認しているのが、狩衣衣装とゴルゴーンの2体で両モデルとも破綻箇所は肘になります。


この破綻はウェイトをSDEFモードで塗られていた場合の関節などで起こりますので、他のモデルさんで同じような事が起こっても上記の方法で修正できます。

(修正できない場合は、別のことが原因だと考えられます。ただ、MMDとPmxEditorは制作者も違い、別々のソフトなので、全てにおいて全く同じ状態を再現できるものではない。ということも頭に入れておいてください)

他にも修正方法を書いているブログはあると思いますが、自分のモデルで発生していますので、問い合わせなどが来た時の案内の為に今回の内容を書きました。

お役に立てば幸いです。

 

追記

Xと一緒にタイッツーの方タイーツしたら、ご覧になったモデラ―さんから情報を頂きました。

ありがとうございます!

 

PmxEditorの編集から頂点項目でSDEF-C値の正規化という項目でウェイトをチェックしてからモデルの保存をすると破綻を防げるそうです。

お迎えした配布モデルでこの破綻があった場合は、TransformViewで保存する方法でも、正規化する方法のどちらでも修正が可能です。

モデラ―が修正して配布しろよ!と思った方がいるかもしれませんが、実は一つだけわかっている原因が、モデルの身長を変えた時に生じるボーンと頂点の僅かなズレの可能性があるんです。

なんとなくわかってはいたのですが、自分では確信が持てなかったのですけど、同じことを考えてるモデラ―さんもおられました。

ただ、身長を変えていないモデルでも起こっているので、他にも原因がある可能性はあります。

 

最近、この手の不具合の話を聞かないなと思っていたら、PmxEditorの古いバージョンを使用していると起るそうです。

いま使ってるPCは2年前に変えましたが、該当している二体のモデルは10年前のPCで作っている上に、モデルの物理が重いので、新しいバージョンを使うと重くてラグも酷く、セットアップに苦労していたため、古いPmxEditorだと負荷が減るので古いバージョンの物を使用していました。

なので自分のモデルでは原因はそれですね・・・申し訳ない。

 

あと検証作業をしていたら、非常にわかりやすいのが出てきたので載せときます。

PmxEditorの古いバージョンを使用して身長を変更した際の、正規化前と正規化後です。

一番初めに載せた画像のモデルよりも身長が少し低めに変更したらこうなりました。

これ、毎回出るわけではなく、出たり出なかったりするのが困ったとこなんですよね。

配布衣装ですので、お着換えの時にTransformViewから保存している人も多いと思いますが、大丈夫だろうかと気になります。

 

最近のモデルでは発生しないのではないかと思いますが、何年も前のモデルではこの症状が出る可能性もありますので、対処方は知っていたほうがよいと思います。

一瞬、この記事消した方がいいか? と考えもしましたが、どこかで困ってる方がいるかもしれないので、残しますね。