今回は、VRChatへのアバターのアップロード方法を紹介します。
Blender等で作ったアバターをVRChatにアップロードする方法を紹介したいと思います。
目次
必要なもの
- FBX形式のアバター
- UnityHub
- Unity バージョン2019.4.29f1
- VRCHAT SDK3
- Blender
BlenderでモデルをFBXで書き出し
Blenderで書き出したいアバターモデルをボーンとメッシュすべてを選択します。
キーボードのF4もしくは、ファイル > 書き出しから、Export > FBXを選択します
上から、赤線を引いているところのCamera、Lampの選択をShiftを押しながら外します。
ApplyScalingsをFBX ALLにします。
Armatureの中のAdd Leaf Bonesのチェックを外します。
UnityHubからUnityをインストール
Unityのインストールをします。
Unityは、古いバージョンも使用しますので、バージョン管理のため、
UnityHubをインストールします。
UnityHubからUnity2019.4.29fをインストールします。
unityでプロジェクトを作成
UnityHubからインストールしたバージョン2019.4.29f1のUnityです。
ここからプロジェクトを作成します。
プロジェクト名と保存先を決める
テンプレートを3Dにします。
次に、プロジェクト名を適当な名前を付けます。
保存先を決めて作成します。
UnityにインポートするためのVRCHAT SDK3-Avatorsをダウンロードします。
VRCHAT SDK3をインポート
Unityを立ち上げ、VRCHAT SDK3をインポートします。
Asset > import Package > Custom PackageからVRCHATのサイトからダウンロードしたVRCHAT SDK3をインポートします。
ダウンロードしたVRCHAT SDK3を選択して開きます。
Import Unity Packageから全てインポートします。
上部のメニューにVRChat SDKが表示されていることを確認。
VRChatウィンドウが立ち上がりますが、閉じてしまって大丈夫です。
ProjectのAssetsフォルダにFBX形式の3Dモデルとテクスチャをドラッグでインポートします。
Materialの設定をします。
先ほどドラッグでインポートしたFBXモデルをHierarchyにドラッグで入れます。
テクスチャがまだ貼られていませんのでSceneには白色で表示されます。
AssetsフォルダのFBXモデルを選択し、Inspectorに(Model・Rig・Animation・Materials)がありますが、Materialsをクリックします。
その中にあるExtract Materialsをクリックします。
フォルダの選択ウィンドウが立ち上がりますので、何もせずそのままフォルダーの選択をクリックします。
すると、Assetsフォルダ内にMaterialが作られます。
Materialを選択し、Inspectorを見ます。
Emissionにチェックが入っているか確認します。
Color左にテクスチャが入っていればOKです。
光の影響は必要ないので、specular highlights(鏡面ハイライト)、Reflections(反射)のチェックを外しました。
Emissionにテクスチャが入っていない場合は、EmissionのColorの先頭にある○をクリックすると、テクスチャを選ぶことができます。
Emissionにテクスチャを入れている場合、Albedのカラーが白になっているとテクスチャが白っぽくなります。
白になっている場合は、カラーを黒にしておきましょう。
Rigの設定
次に、Rigの設定です。
HierarchyのFBXモデルを選択してInspectorのRigを選択します。
Animation TypeがGenericになっているのを、Humanoidに変更します。
Humanoidに変更したら、Applyボタンをクリックします。
次に、Configureボタンをクリックします。
ウィンドウが現れますので、Saveをします。
Configureをクリックすると、緑色の全身のBoneのマッピングが現れます。
そこで、Boneがうまく割り当てられているか確認します。
下記画像の場合、名前の先頭に緑の◉が表示されています。
割り当てられていないと、◉が空白になっています。
私の場合、Chestが空白になっており、割り当てられていませんでした。
HierarchyのChestをInspectorにマウスでドラッグして関連付けます。
UpperChestのBoneは作っていませんので空白で構いません。
頭、左手、右手のマッピングもちゃんと割り当てられているか確認します。
頭部の右目、左目、アゴが空白になっていますが、
作っていないBoneは空白のままでいいです。
Boneの割り当てを確認をしたら、右下のDoneボタンをクリックします。
UnappIed import setting for ‘Assets/○○○.fbxのウィンドウが現れたらApplyをクリックします。
VRC Avator Descriptorの設定
VRChatの視点の設定
HierarchyのFBXを選択してInspectorの、Add Comonentをクリックします。
まずScriptsを選択します。
次に、VRC SDK3 Avatars Componentsを選択します。
最後にVRC Avator Descriptorが現れますのでこれを選択します。
すると、View Positionを変更することができます。
これは、VRChatで自分の視点になります。
FBXモデルを真横にして、平行投影にします。Y軸で高さを調整し、Z軸で左右の調整をします。大体目と目の間に調整するとちょうどいいと思います。
LipSyncの設定
自分の声に合わせてアバターの口が動く設定をします。
ModeをDefaultからViseme Blend Shapeに変更します。
次に、Face Mashの設定をします。
Blenderなどで、Blend Shapeを作ったオブジェクトを選択します。
下記画像の◉をクリックします。私の場合、Blend ShapeはHeadを選択してします。
「Viseme aaには(A)」「Viseme Eには(E)」「Viseme ihには(I)」とBlender作ったBlend ShapeをUnityに当てはめていきます。
下記のように、全てあてはめました。
Viseme:PPなど、BlenderでBlendshapeを作っていない口の形は適当にあるもので代用しました。
アバターにまばたきをさせる
Eye LookのEnableをクリックします。
EyelidsのEyelid TypeをNoneからBlendshapesにします。
Eyelids MeshにBlendshapeを設定したモデルをあてはめます。
私の場合Headに設定しました。
Blendshape Statesが現れますのでBlinkにBlenderで設定したBlinkをあてはめます。
まばたきすることができました。
InspectorのBlinkのReturnを押すと、元に戻ります。
アバターをVRChatにアップロード
VRChat SDKメニューからShow Control Panelを選択します。
VR Chat SDKのBuilderを選択します。
Build & Publish for Windowsをクリックします。
ウィンドウが表示されたら閉じます。
下記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タブをクリックしてカメラを移動します。
カメラの距離を離してField of Viewのパラメーターを変更します。
Upload Imageを変更しました。
Uploadボタンをクリックします。
ウィンドウが現れ、Okayをクリックします
これでアバターをアップロードすることができました。
Content Managerをクリックすると、アップロードしたアバターやワールドを見ることができます。
アップロードしたオリジナルアバターでバーチャルマーケットに行ってみました!
VRChat ライフを楽しみましょう!
最後までご覧いただきありがとうございました!