12
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

VRMモデル作成時、メッシュ直したらSpringBoneとか移すのが面倒な件

Last updated at Posted at 2018-09-19

この記事について

VRMのSpringBoneやBlendShapeを別のモデルにコピーする方法のメモです。VRMモデルの作成そのものには慣れている人を対象にしています。

以下のような場合に役立ちます。

UnityでVRMをセットアップして動かしてみたらモデルに穴が開いてる! Blenderで直してFBXが出来たけどまたUnityに入れてSpringBoneとか全部設定し直すの? 面倒くさいなあ・・・・・・

この記事の手順でSpringBoneやBlendShapeなどの設定を古いモデルから新しいモデルにコピーできます。

必要なファイルなど

UniVRMのバージョンはv0.43で試しています。**古いバージョンでは以下の手順は使えません。**新しいUniVRMを入れ直してください。

また、**SpringBoneの設定のコピーにCopyComponentsByRegexを使います。**リンク先に飛んで右上の「Clone or download」から「Download ZIP」をクリックするとダウンロードできます。ダウンロードできたら、中に入っているEditorフォルダをモデルの入ったUnityプロジェクトの中に入れてください。

古いモデルから新しいモデルに設定をコピーする手順

新しいモデルをインポートしてVRMに変換する

FBXファイルを通常の手順に従ってVRM化します。この段階ではSpringBoneとBlendShapeの設定は何もされていません。

  1. 新しいFBXファイルを、古いモデルと同じUnityプロジェクトにインポートします。通常通りAnimationTypeをHumanoidにしてConfigureからボーンの設定をしてください。ここはコピーできません。
  2. その後も通常通り、そのFBXをシーンに配置してExport HumanoidでVRM化します。

BlendShapeのコピー

古いVRMからBlendShapeの設定をコピーします。モデルのブレンドシェイプの構成が変わっていると上手くコピーできないことがあります。

  1. 古いモデルのBlendShapesフォルダと、新しいモデルのBlendShapesフォルダをエクスプローラで開きます1
  2. 古いモデルのフォルダから**「BlendShape.asset」以外の**全てのassetファイルを新しい方のフォルダに上書きコピーします。
  3. Unity上で新しいモデルのBlendShapeを選択して、InspectorウィンドウでBlendShapeが表示されるようにします。
  4. Inspectorウィンドウ右上の歯車ボタンからRestoreをクリックします。

以上でBlendShapeの設定をコピーできました。

SpringBoneのコピー

古いVRMからVRMSpringBoneとVRMSpringBoneColliderGroupの設定をコピーします。モデルのボーンの名前や構成が変わっていると上手くコピーできないことがあります。

  1. 新しいVRMをシーン上に配置して古いモデルの横に並べておきます。
  2. Hierarchyウィンドウで古いモデルを右クリックして「Copy Components By Regex」をクリックします。
  3. 新しいウィンドウが出てきます。正規表現の部分に「VRMSpring」と入力してください。
  4. Copyボタンをクリックします。
  5. Hierarchyウィンドウで新しいモデルを選択してからPasteボタンをクリックします。

以上でSpringBoneの設定をコピーできました。

MaterialのコピーとTextureの移動

古いVRMからマテリアルの設定をコピーします。マテリアルの名前などが変わっていると上手くコピーできないことがあります。

  1. 古いモデルのMaterialsフォルダと新しいモデルのMaterialsフォルダをエクスプローラで開きます1
  2. 古いモデルのフォルダから全てのassetファイルを新しいフォルダに上書きコピーします。
  3. Unity上で新しいモデルのTexturesフォルダの中身を全て削除します。
  4. Unity上で古いモデルのTexturesフォルダの中身を全て新しいモデルのTexturesフォルダに移動します。

以上でマテリアルの設定をコピーできました。

その他

もっといい方法があったら教えてください。

  1. Projectウィンドウでファイルを右クリックして「Show in Explorer」をクリックするとそのフォルダを開けます 2

12
12
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
12
12

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?