はじめに
Cluster用に作成したリアルアバターのガチ本をQuest2用にVRChatへアップロードする方法をまとめました。VRM形式のアバターなのですが、Quest2用に5000ポリゴン以下にする必要があり、Blenderでのポリゴン削減やリグの修正が面倒だったので、Unityだけで完結したく、お金(Mesh Simplifyを用いて)で解決しました。
システム環境
- Windows 10
- Oculus Quest2
- Unity 2018.4.20f1
- VRCSDK2
- VRM Converter for VRChat
導入
1.Unityプロジェクトを作成します。
2.VRCSDK2をインポートします。
3.【¥0】 VRM Converter for VRChatのVRM Converter for VRChat-24.0.2 + UniVRM-0.61.1.unitypackageをインポートします。
4.VRMアバターをProjectビューへD&Dします。ガチ本のリアルアバターを使用しています。
5.VRMアバターのプレハブをHierarchyビューへD&Dします。
6.VRM->Duplicate and Convert for VRChatをクリックし、VRMアバターをVRChat用に変換します。
8.VRChat SDKのControl Panelを開き、VRChatにサインインします。
9.Builderを開きます。Windows用だと問題なくそのままアップロードできます。ポリゴン数は3万ポリゴン程度です。Quest2用にアップロードするため、Switch Build Target to Androidをクリックします。
11.Quest2用にポリゴン数を5000ポリゴン以下に削減します。Mesh Simplifyをインポートします。
12.BodyにMesh SimplifyをAdd Componentし、5000ポリゴン以下になるようにVertex %を設定し、Enable Prefab Usageにチェックを入れ、Compute meshをクリックします。
13.なんじゃこりゃああ!!!顔だけは削減しないように工夫する必要がありますね… 取り急ぎこれでww やっぱりBlenderか…
14.アップロードしようとするとMesh Simplifyがあることでエラーが出てしまいます。
15.Mesh Simplifyを用いたプレハブは一旦削除して、ポリゴン削減する前のプレハブをHierarchyビューに持ってきて、Body->Skinned Mesh Renderer->Meshを生成されたmesh_Body-xxxxに置き換えます。あとBodyについてるAnimatorをRemove Componentします。これでAnimator Count:2の警告がなくなり、Overall Performance:Excellentになります。
16.VRC Avatar DescriptorのView Positionを設定します。
17.VRChat SDKのControl Panelを開いて、アップロードしましょう。
18.Quest2でVRChatを起動し、アバターを確認します。
できました!
追記
19.顔だけポリゴンを残すために、Vertex Relevance Modifiers->Add New Sphereをクリックし、青透明の球体が顔に入るようにSphere情報を変更します。Relevanceを1.0にして、Compute Meshをクリックしましょう。すると、顔だけ保持されていい感じになりました!