はいぬっかメモ

キャラクターモデルをVR空間で眺めたい

パーフェクトシンクの顔をお着換えモデルに移植しよう

f:id:hinzka:20200816212032p:plain

<概要>

パーフェクトシンク対応(BlendShape追加済)のVRMモデルの顔を、同一キャラクターの衣装違いモデルに移植します。

VRoidを例にしていますが、他のモデルでも同様の手順でできる可能性があります。

 

 

1.VRoidのオブジェクト構成

f:id:hinzka:20200817000618p:plain

髪や体の揺れもの設定を維持したまま、Faceのみを差し替えます。

 

 2.Blender

2-1.VRMインポート

VRM Importerアドオンを使用します。

github.com

2体のVRMを同一シーン上にインポートします。

モデルが完全に重なって表示されます。そのままで作業をすすめます。

f:id:hinzka:20200817000738p:plain

 

2-2.Faceオブジェクト差し替え

FaceオブジェクトはHeadボーンに100%追従するため、差し替えは簡単です。

オブジェクト名と格納ディレクトリに気をつけてください。

Faceオブジェクトの文字列が本来のものと異なるとエクスポートに失敗します。

f:id:hinzka:20200817000752p:plain

 

2-3. Faceオブジェクト位置調整、VRMエクスポート

靴の厚みが異なると身長が変わってしまうので頭の位置がずれます。必要に応じて位置調整します。

その場合も、BlenderのZ方向(高さ)以外は調整不要のはずです。

f:id:hinzka:20200817000804p:plain

 

3.Unity

BlenderからVRMエクスポートすると、なぜかアウトラインが非表示になってしまいます。

Unityでマテリアル編集を行い最終調整します。

UniVRMをUnityにインポートしておきます。

github.com

f:id:hinzka:20200819120640p:plain

最終VRMをエクスポートして完了です。

 


4.Face.bakedのリネーム

Faceオブジェクトがリネームされた影響として、VRoid Mobileで表情が動作しなくなります。

"Face.baked" を "Face"に戻すことで動作するようになります。

 

Blenderを使ってリネームができます。

オブジェクト名から”.baked”を除去 + スクリプトから”.baked”を除去

なお、オブジェクト名とスクリプトの記述が一致していないとエクスポートに失敗します。

(むずかしいとおもったらやめておきましょう)

HANA Tool V2アセットのReaderでは、指定したオブジェクトを"Face”にリネームする機能があります。

kuniyan.booth.pm