見出し画像

Spring Bone無しのVRM出力しかできないときの対処法

KissMaちゃんの頭部を移植した桔梗ちゃん(以下改変モデル)は完成したものの VRM Converter for VRChat での変換ができませんでした。これではPhys Boneの変換がされず揺れ物が動きません
しかしUniVRM標準の Export to VRM 0.x での出力はできたので、自力で素体のほうから Spring Bone を移植して揺れ物が動作するようにします
Unityのバージョンは 2019.4.31f1 です

今回の方法が使える条件

  • 改変モデルが Export to VRM 0.x で出力できる

  • 改変元VRChat用モデルが VRM Converter for VRChat で変換可能

各種モデルを準備する

  1. 改変モデルを Export to VRM 0.x でSpring Bone無しのVRMにする

  2. 素体モデルを初期状態のまま VRM Converter for VRChat で変換

  3. Sceneの座標 0, 0, 0, に改変モデルを配置

Spring Boneを移植していく

  1. 素体モデルのうち一体をSceneに読み込む

  2. 素体モデルのsecondaryを開き、Root Bonesを参考に不要な項目を消す

  3. 改変モデルのsecondaryに、項目をドラッグ&ドロップして移植

  4. 改変モデルのsecondaryを開き、Root Bonesの参照先を改変モデルに修正

  5. (Colliderも同様に修正:下記で説明するので割愛)

  6. コメント欄に修正完了を示す一文を記入する

上記を繰り返していきますが、一度に複数のSpring Boneを移動させるとややこしくなるので、ひとつ移動させるごとに設定作業を行うほうが良いと思います
新しいColliderが登場するたび、次の段落参照にColliderも追加していきます

Colliderを移植する(適宜)

体側の当たり判定となるColliderは、新しい項目が出てくるたびに適宜移植していきます。Spring Boneよりやや複雑ですが基本的な発想は同じです
頭側素体のSpring Boneが胴体側素体のColliderを参照していたりするので、どの素体のColliderを移植するか気を付ける必要があります

  1. 必要なColliderを持つ素体のsecondaryを開き、Colliderの項目をクリック

  2. ヒエラルキーで参照先ボーンがハイライト表示されるので選択

  3. そこの VRM Spring Bone Collider Group をコピー

  4. 改変モデルの同名(or 適切な箇所)のボーンにペーストする

  5. 改変モデルのSpring BoneのCollider参照先を修正する

Prefab化の方法

青アイコンにするといっても、Unpackしちゃった場合は?
Unpackしたやつを再度Prefab化するには、ヒエラルキーからアセットブラウザにドラッグ&ドロップします。選択肢が出たら Original Prefab を選択しておきましょう

お疲れ様でした。面倒な作業ではありますが、上記を繰り返していけば Spring Bone を移植することができます
VRM変換はできるがVRC→VRM変換はできない、という特殊な事例ですが助けになれば幸いです

この記事が気に入ったらサポートをしてみませんか?