BlenderでVRC用の非対応衣装を調整するときに見るメモ
基本方針は https://note.com/alchemist_vr/n/n65cd9a80069c#76390856-5f63-400b-a521-5cac925b799d
作業概要
大まかにスケールを合わせる
大体高さは足先から首まで、幅、奥行きは腰、腹周りを合わせると密着部分の修正が少なくて良い
揺れものボーンの切り離し
揺れもの用のRootを見逃したりしがちなので、一度UnityにインポートしてPhysBoneの設定を見たほうが安定する
ヒエラルキーでCtrl+クリックで追加選択→モデルビューでShift+Gで子の全選択を繰り返す
Rootを見逃して末端だけを切り離し、素体Armatureに移植してしまった場合は、blender側で再度ボーン構造の修正をしてfbx再出力をすればよい
unity側でfbx unpackしていると詰みそうなので、unpackは極力行わない
揺れものボーンの素体側への移動
揺れもの以外のArmature追従メッシュの移動の前に
Armatureのボーンのリネームをすると頂点ネームが全部まとめてリネームされるので便利
メッシュ合わせ
ラティスを活用するのがいいが、一度にいろんな部分を合わせようとせず、直したい場所ごとにラティスモディファイアを適用して、新しいラティスで調整しなおすのがよい
左右(x)方向のミラー編集はできないので、グリッドをもとに手動で頑張るか、AutoMirrorにするか、プロポーショナル編集とかでミラー編集を効かせるか、状況に応じて検討
編集中
ウエイト関連
データ転送モディファイアで頂点グループを「最近接面の補完」で実行
服のメッシュを選択 -> ボーン選択した後にCtrl+P -> 「空のグループで」で頂点グループ作成
ポーズモードで挙動確認(モディファイア適用前は微妙な破綻があるけど適用すれば治る)
マントや浮いてる部分が多かったりレイヤーになってる場合はうまくいかないことも多いので、元衣装を大まかにスケールとかで合わせてそのまま転送してあげたほうが良かったりする
胸揺れ
素体と衣装の胸揺れ用頂点グループを合わせる
衣装の胸グループが足りなければ追加してからウエイト転送する
fbx出力
出力した衣服のオブジェクト、ボーン、メッシュなどを選択した状態(トップだけとかはNG)
「選択したオブジェクト」にチェック
エンプティ、アーマチュア、カメラのみ
スケールは「すべてFBX」
-Yを前方、Zが上
トランスフォームは適用した方が安定する
https://gyazo.com/c926c0b475e669a93e0419ab1a9069b5
トラブルとか
Unity側でArmatureのscaleが100になっている PhysBoneを持ってくると配置がおかしい
スケール設定が「すべてFBX」になっていない
Unity側で謎に全体が膨れた状態のメッシュが出力される
「トランスフォームを適用」にチェックが入っていない
Unityにもっていってから
衣装のfbxからprefabを作って、そこに元衣装のPB設定などを移植していく
ComponentCopyregexなどを使ってもダメなときはダメなので、割と根気がいる
ArmatureからPB抜くやつ、などを使って元衣装のPBをまとめたほうが色々メンテしやすい