某動画を見てやってみました。備忘録です。
今回犠牲になる編集するモデルはクレサト式EXルーミアになります。
こちらの記事にあるように進めていきます。
途中でちょくちょく別名保存していくとやらかした時のダメージが軽減されます。
PMXEditorを使用しますが、作業中にPMDEごった煮プラグインを利用します。
スカート関連オブジェクトの消去
まずはPMXEditorでモデルを読み込み、
スカートに関連したボーン、剛体、ジョイントを削除します。
これが
こう
次に、スカートの親となる下半身ボーン、対象の頂点があるスカートの材質を選択した状態で、編集 > プラグイン > User > EtcPlugin > BODY > 選択した材質からボーン/剛体/Jointを作成する。
(別名パンツプラグイン)を実行します。
スカートの頂点に対してボーンと剛体が作成され、対応したジョイントが追加されます。
ボーン
作成されたすべてのボーンの移動を無効にして、一番下のボーンに関しては非表示とします。
次に各々のボーンの表示先を設定していきます。
上から2番目にあるボーンを選択して、テキストボックスに表示される番号を一番上のボーンの表示先ボーン番号に入力します。
正しく入力できていれば、ぽつぽつとしていたスカートボーンが上から順に並んでいるように見えるはず。
プラグインでできた先端を除くすべてのボーンの表示先設定が終わって間違いがなく下の図のようになっていれば、今度は親ボーンを上から設定していきます。
プラグインでできるボーンの名前は規則性があるようでなく、その上親子関係は表示されずに危なっかしいので、表示先を設定してから親ボーンを設定しています。
さて、ボーンの設定中にボーン名が赤くなったのを見かけたかもしれません。
自動生成されたボーンに親子関係が加わりましたが、もともとの順序はバラバラです。
「全ての親」ボーンがボーンリストの一番上にあるように、親は上、子は下に配置されていなければなりません。
ファイルからPMXデータの検証をすると、
■ボーン
系列順序確認 : 103 | ... × Bad! 以下のボーンは親の変形順序が子より後になります(ボーン順と変形順序を確認してください).
と言われます。
これを解消するために、一番上のボーンを一括で範囲選択して、Ctrl-↑でスカートボーン集団の一番上に持っていってやります。
1つ1つの操作はなかなか重いですが、次の段、また次の段と進めて、PMX検証で系列順序確認部のエラーがなくなればこの作業は完了です。
ここで、一番下のボーン以外のスカートボーンをすべて選択して、ローカル軸修正をかけておきます。
剛体
作成された剛体のうち、一番上のものをボーン追従に、それ以外のものを物理演算に設定しておきます。各剛体の形状、大きさは適度に調節します。
また、非衝突グループのチェックも必要に応じて入れておきます。
ジョイント
作成されたジョイントを選択して、編集 > プラグイン > User > EtcPlugin > JOINT > 選択したJointを接続剛体Bのボーン角度で回転する
を実行します。
一応ボーン設定の最後で設定したローカル軸が生きているはずですが、一番下のジョイントは表示先がないせいかダイナミックな感じに回転してしまいます。
これらジョイントの制限は0にしたほうが無難のようです。
ここからは自分のための覚え書きになりますが、ジョイント制限は下に行くほど緩めにしたほうがいいっぽいです……?
とはいっても0.1前後単位の話になりますが、全て0のままだとスカートが垂れてくれないので難しいところです。
とりあえずZ軸方向の移動とx, z軸回転を3段くらいに分けて増加するようにしておきました。
結果
ここまでの作業で、記事冒頭のような形に。
元のモデルが良い調整で大きな差は出ませんでした。
もう少し設定が粗めのモデルでやったほうがわかりやすかったですね。
感想
ボーン設定キツイ
我ながらよく途中で放り出さなかったなと。
もっとここ楽できるぜとかあったら知りたいですね。
あとジョイント設定のおすすめサイト教えてくださいお願いします。
参考サイト
http://mmd.stella.sub.jp/?eid=103