![見出し画像](https://assets.st-note.com/production/uploads/images/80375122/rectangle_large_type_2_a468cc8ff4afebc338c97af121f63d7c.png?width=1200)
VRMから変換したPMXを整理する
前の記事で出力したPMXをMMDで動いてもそれなりに見えるように設定していきましょう。
用意するもの
◆PMX Editor
https://kkhk22.seesaa.net/category/14045227-1.html
◆PMDEditor用プラグイン・モデルの身長計測・変更(身長158cm)
https://seiga.nicovideo.jp/seiga/im2597790
◆[ツール]MMD変換したVRM(Vroid)を使いやすく最適化
https://nossori.booth.pm/items/1329577
◆準標準ボーン追加プラグイン
https://www.nicovideo.jp/watch/sm14956092
◆MaskImageToEdge
https://bowlroll.net/file/262848
PMX Editor本体以外は全部PMX Editor用のプラグインなので、説明書どおりにプラグイン登録しておいてください。
プラグインも準備できたら、まずはPMX Editorでさっき作ったPMXを開きましょう。
![](https://assets.st-note.com/img/1654839435589-f7erQIXesL.png?width=1200)
身長を直す
「身長158cm」プラグインを実行して身長を整えます。
![](https://assets.st-note.com/img/1654839990762-CM7ZxutE7i.png?width=1200)
![](https://assets.st-note.com/img/1654839614010-o7niXukVtd.png?width=1200)
最適化
2つ目のプラグイン「VRM2PMX変換モデルの最適化」を実行します。
このツールは本来Vroidのモデルを最適化するものなので、とても多機能ですが、今回は最小限の機能だけ使わせていただきます。
さっくりいうと姿勢の調整、そして表示枠の整理です。
![](https://assets.st-note.com/img/1654840229454-WH2SAiPoFj.png?width=1200)
準標準ボーンの追加
準標準ボーンはこのプラグインで追加すると失敗が少ないと思います。
![](https://assets.st-note.com/img/1654840390887-5z4dUiy0Y0.png?width=1200)
材質の整理
マテリアルの調整です。
アウトラインのあるモデルの場合、この作業が必要になります。
「MaskImageToEdge」プラグインは、Unityで言うところのアウトラインマスクを利用してアウトラインの太さを変えてくれるものです。
MMDのモデルは基本的に1頂点ごとにアウトラインの幅を決めていく仕様なので、アウトラインをいい感じに出すのは結構苦労するのですが、このプラグインで一発で調節できます。
![](https://assets.st-note.com/img/1654840875295-urdnnU3vbZ.png?width=1200)
アウトラインマスク用の画像を用意したら、材質タブで適用したいマテリアルを選択し、プラグインを実行してマスク画像を読み込ませてください。
![](https://assets.st-note.com/img/1654841030107-HPB97j0sRM.png?width=1200)
揺れものの整理
MMDの揺れものは奥が深すぎるので、ここではざっくりと説明します。
VRMからの変換で吐き出されたPMXの揺れものには不要なデータがいくつかあるのでそれらを削除していきましょう。
まずは剛体(コライダー)を整理します。
おそらくスカートや髪などのゆれものを作る際は、ルートボーンを使うことが多いでしょう。UnityのダイナミックボーンやVRCのPhysBoneはルートに指定したボーンは揺れないようにすることができますが、VRMから変換したPMXのルートには揺れ設定が仕込まれてしまうので、挙動がおかしくなってしまいます。
ルートのコライダー、そしてエンドボーンがある場合はそれらのコライダー、そしてエンドボーンの先に生える_comとついたコライダーは消して大丈夫です。
![](https://assets.st-note.com/img/1654841797258-wrn1UBkC4M.png?width=1200)
そして足ボーンに入れていた貫通防止のコライダーを整理します。
丸いコライダーが3つ縦に並んでしまっていたので、不要な部分を削除し、形状を変更していい感じに配置します。
![](https://assets.st-note.com/img/1654841970516-lUWfhGSDY1.png?width=1200)
![](https://assets.st-note.com/img/1654842136194-E4XCUDk9pM.png?width=1200)
![](https://assets.st-note.com/img/1654842518196-4s8w6vEXQO.png?width=1200)
次はジョイントの整理です。
ジョイントは剛体をつないでいるものなので、さっき消してしまった剛体とつながっている部分をつなぎ直し、不要なジョイントを削除して整理します。
先程の剛体の整理と同様に、ルートのジョイントと_comとつくジョイントをすべて削除してください。
![](https://assets.st-note.com/img/1654842650224-w3bLahDRhP.png?width=1200)
ジョイントの接続を直します。
ジョイントの項目を見ると、「A」 -> 「B」というふうに剛体同士がつながっているのがわかります。先に消した剛体を登録してあった部分はリンク切れになって「 」->「B」となってしまっているので、「接続剛体A」の部分に接続先の剛体を登録します。
![](https://assets.st-note.com/img/1654843401042-M7LNvcLXWZ.png?width=1200)
これでひとまずの整理は終了です。
あとは納得行く物理演算が出来るまで剛体やジョイントの数値を調整していくことになると思いますが、そこはもっとMMDに詳しい方の記事や便利なプラグインなどを使っていくといいと思います。
ここまで読んでいただいてありがとうございます、お疲れ様でした!
素人記事なので間違っていることや無駄なことをしているかもしれませんが、そこは一緒に探っていく仲間として大目に見ていただければ幸いです!