Unity VRChatアバターのアップロード方法

今回は、VRChatへのアバターのアップロード方法を紹介します。
Blender等で作ったアバターをVRChatにアップロードする方法を紹介したいと思います。

目次

必要なもの

  • FBX形式のアバター
  • UnityHub
  • Unity バージョン2019.4.29f1
  • VRCHAT SDK3
  • Blender

BlenderでモデルをFBXで書き出し

Blenderで書き出したいアバターモデルをボーンとメッシュすべてを選択します。

アバター blender fbx

キーボードのF4もしくは、ファイル > 書き出しから、Export > FBXを選択します

アバター blender fbx

上から、赤線を引いているところのCameraLampの選択をShiftを押しながら外します。
ApplyScalingsをFBX ALLにします。

Armatureの中のAdd Leaf Bonesのチェックを外します。

アバター blender fbx

UnityHubからUnityをインストール

Unityのインストールをします。
Unityは、古いバージョンも使用しますので、バージョン管理のため、
UnityHubをインストールします。

UnityHubからUnity2019.4.29fをインストールします。

unityでプロジェクトを作成

UnityHubからインストールしたバージョン2019.4.29f1のUnityです。
ここからプロジェクトを作成します。

Unity ユニティ VRCHAT VR アバター

プロジェクト名と保存先を決める

テンプレートを3Dにします。
次に、プロジェクト名を適当な名前を付けます。
保存先を決めて作成します。

Unity ユニティ VRCHAT VR アバター

UnityにインポートするためのVRCHAT SDK3-Avatorsをダウンロードします。

Unity ユニティ VRCHAT VR アバター

VRCHAT SDK3をインポート

Unityを立ち上げ、VRCHAT SDK3をインポートします。

Asset > import Package > Custom PackageからVRCHATのサイトからダウンロードしたVRCHAT SDK3をインポートします。

Unity ユニティ VRCHAT VR アバター

ダウンロードしたVRCHAT SDK3を選択して開きます。

Unity ユニティ VRCHAT VR アバター

Import Unity Packageから全てインポートします。

Unity ユニティ VRCHAT VR アバター

上部のメニューにVRChat SDKが表示されていることを確認。

VRChatウィンドウが立ち上がりますが、閉じてしまって大丈夫です。

Unity ユニティ VRCHAT VR アバター

ProjectのAssetsフォルダにFBX形式の3Dモデルとテクスチャをドラッグでインポートします。

Unity ユニティ VRCHAT VR アバター

Materialの設定をします。

先ほどドラッグでインポートしたFBXモデルをHierarchyにドラッグで入れます。
テクスチャがまだ貼られていませんのでSceneには白色で表示されます。

Unity ユニティ VRCHAT VR アバター

AssetsフォルダのFBXモデルを選択し、Inspectorに(Model・Rig・Animation・Materials)がありますが、Materialsをクリックします。
その中にあるExtract Materialsをクリックします。

Unity ユニティ VRCHAT VR アバター

フォルダの選択ウィンドウが立ち上がりますので、何もせずそのままフォルダーの選択をクリックします。

Unity ユニティ VRCHAT VR アバター

すると、Assetsフォルダ内にMaterialが作られます。

Unity ユニティ VRCHAT VR アバター

Materialを選択し、Inspectorを見ます。
Emissionにチェックが入っているか確認します。
Color左にテクスチャが入っていればOKです。

光の影響は必要ないので、specular highlights(鏡面ハイライト)、Reflections(反射)のチェックを外しました。

Unity ユニティ VRCHAT VR アバター

Emissionにテクスチャが入っていない場合は、EmissionのColorの先頭にある○をクリックすると、テクスチャを選ぶことができます。

Unity ユニティ VRCHAT VR アバター

Emissionにテクスチャを入れている場合、Albedのカラーが白になっているとテクスチャが白っぽくなります。
白になっている場合は、カラーを黒にしておきましょう。

Unity ユニティ VRCHAT VR アバター

 

Rigの設定

次に、Rigの設定です。

HierarchyのFBXモデルを選択してInspectorのRigを選択します。
Animation TypeがGenericになっているのを、Humanoidに変更します。

Unity ユニティ VRCHAT VR アバター

Humanoidに変更したら、Applyボタンをクリックします。

Unity ユニティ VRCHAT VR アバター

次に、Configureボタンをクリックします。

Unity ユニティ VRCHAT VR アバター

ウィンドウが現れますので、Saveをします。

Unity ユニティ VRCHAT VR アバター

Configureをクリックすると、緑色の全身のBoneのマッピングが現れます。
そこで、Boneがうまく割り当てられているか確認します。

下記画像の場合、名前の先頭に緑の◉が表示されています。
割り当てられていないと、◉が空白になっています。

私の場合、Chestが空白になっており、割り当てられていませんでした。
HierarchyのChestをInspectorにマウスでドラッグして関連付けます。
UpperChestのBoneは作っていませんので空白で構いません。

Unity ユニティ VRCHAT VR アバター

頭、左手、右手のマッピングもちゃんと割り当てられているか確認します。
頭部の右目、左目、アゴが空白になっていますが、
作っていないBoneは空白のままでいいです。

Unity ユニティ VRCHAT VR アバター

Boneの割り当てを確認をしたら、右下のDoneボタンをクリックします。

Unity ユニティ VRCHAT VR アバター

UnappIed import setting for ‘Assets/○○○.fbxのウィンドウが現れたらApplyをクリックします。

Unity ユニティ VRCHAT VR アバター

 

VRC Avator Descriptorの設定

VRChatの視点の設定

HierarchyのFBXを選択してInspectorの、Add Comonentをクリックします。

Unity ユニティ VRCHAT VR アバター

まずScriptsを選択します。

Unity ユニティ VRCHAT VR アバター

次に、VRC SDK3 Avatars Componentsを選択します。

Unity ユニティ VRCHAT VR アバター

最後にVRC Avator Descriptorが現れますのでこれを選択します。

Unity ユニティ VRCHAT VR アバター

すると、View Positionを変更することができます。
これは、VRChatで自分の視点になります。
FBXモデルを真横にして、平行投影にします。Y軸で高さを調整し、Z軸で左右の調整をします。大体目と目の間に調整するとちょうどいいと思います。

Unity ユニティ VRCHAT VR アバター

LipSyncの設定

自分の声に合わせてアバターの口が動く設定をします。

ModeをDefaultからViseme Blend Shapeに変更します。

Unity ユニティ VRCHAT VR アバター

次に、Face Mashの設定をします。
Blenderなどで、Blend Shapeを作ったオブジェクトを選択します。
下記画像の◉をクリックします。私の場合、Blend ShapeはHeadを選択してします。

Unity ユニティ VRCHAT VR アバター

「Viseme aaには(A)」「Viseme Eには(E)」「Viseme ihには(I)」とBlender作ったBlend ShapeをUnityに当てはめていきます。

Unity ユニティ VRCHAT VR アバター

下記のように、全てあてはめました。
Viseme:PPなど、BlenderでBlendshapeを作っていない口の形は適当にあるもので代用しました。

Unity ユニティ VRCHAT VR アバター

アバターにまばたきをさせる

Eye LookのEnableをクリックします。

Unity ユニティ VRCHAT VR アバター

EyelidsのEyelid TypeをNoneからBlendshapesにします。

Unity ユニティ VRCHAT VR アバター

Eyelids MeshにBlendshapeを設定したモデルをあてはめます。
私の場合Headに設定しました。

Unity ユニティ VRCHAT VR アバター

Blendshape Statesが現れますのでBlinkにBlenderで設定したBlinkをあてはめます。

Unity ユニティ VRCHAT VR アバター

まばたきすることができました。
InspectorのBlinkのReturnを押すと、元に戻ります。

Unity ユニティ VRCHAT VR アバター

アバターをVRChatにアップロード

VRChat SDKメニューからShow Control Panelを選択します。

Unity ユニティ VRCHAT VR アバター

VR Chat SDKのBuilderを選択します。
Build & Publish for Windowsをクリックします。

Unity ユニティ VRCHAT VR アバター

ウィンドウが表示されたら閉じます。

Unity ユニティ VRCHAT VR アバター

下記3点を完了することでアップロードすることができます。

・Avatar Nameに名前を入力します。
・Upload Image
・The above information is accurate and I have the rights to upload this content to VRChat.にチェック

Upload Imageが少し魚眼っぽくなっているので、変更します。
Upload Imageの画角は、Sceneタブをクリックしてカメラを移動します。

Unity ユニティ VRCHAT VR アバター

カメラの距離を離してField of Viewのパラメーターを変更します。

Unity ユニティ VRCHAT VR アバター

Upload Imageを変更しました。
Uploadボタンをクリックします。

Unity ユニティ VRCHAT VR アバター

ウィンドウが現れ、Okayをクリックします
これでアバターをアップロードすることができました。

Unity ユニティ VRCHAT VR アバター

Content Managerをクリックすると、アップロードしたアバターやワールドを見ることができます。

Unity ユニティ VRCHAT VR アバター

アップロードしたオリジナルアバターでバーチャルマーケットに行ってみました!
VRChat ライフを楽しみましょう!

Unity ユニティ VRCHAT VR アバター

最後までご覧いただきありがとうございました!