VRM→Blender→Unity→VRChat

#動機・目的
VRoidで作ったモデルをVRChatで使おうとしたらポリゴン数が多くて使えなかった…よし、Blenderでポリゴン数を減らしてfbxに出力してUnityで読み込もう！ってした人いますよね。僕です。そうすると、テクスチャが全部剥がれててつけようにも名前がわからん無理！諦めた！ってなる人いますよね。僕です。
そんな人にちょっとだけ楽になる解決策を提示しようと思います。
最近知ったのですが、どうやらblendファイルを直接Unityにインポートできるらしいのです。今回はVRMをBlenderにインポートして、blendファイルをVRChatに持って行く方法をまとめました！
#メリット・デメリット
###メリット
- **勝手に追加されるマテリアル名と元のマテリアル名が一緒**で間違えることがない
- UnityからBlenderを開くと、Blenderで編集したものがすぐに反映される(後述)

###デメリット
- VRM独自の設定がなくなる
- テクスチャをつける手間はかかる

###まとめると
変更せずにそのままVRChatでつかうなら、[VRM Converter for VRChat](https://pokemori.booth.pm/items/1025226)が最強
Blenderでポリゴン数削減やその他色々行うなら**fbxにするより便利**

#手順
##準備するもの
- vrmファイル
- Unity ~~(ver 5.6.3p1)~~ **(ver2017.4.15f1)**
- Blender
- [VRChat SDK(VRCSDK)](https://api.vrchat.cloud/home/)
- [UniVRM](https://github.com/dwango/UniVRM/releases)
- [VRM_IMPORTER](https://github.com/iCyP/VRM_IMPORTER)

##環境準備
Unityで新しいプロジェクトを作ります。VRCSDKは~~Unity ver5.6.3p1しか対応してないので~~
新しく、**Unity ver2017.4.15f1**対応となりました！そのバージョンのUnityを使いましょう。ダウンロードは[こちら](https://unity3d.com/jp/get-unity/download/archive)からできます。ちなみに、このサイトではUnity Hub内からダウンロードできないバージョンもダウンロードできます！便利ですよ～
できたプロジェクトにUniVRMとVRCSDKをインポートしておきます。

次にBlenderでVRMを扱うためにBlenderにアドオンを追加します。
ここからのBlenderは日本語で扱います。日本語化の方法は[こちら](https://blender-cg.net/nihonngoka/)を参考に。
ダウンロードしたVRM_IMPOTERは**zipファイルのまま**扱います。
ファイル→ユーザー設定→アドオンを開きます。
ファイルからアドオンをインストールを押して、zipファイルのVRM_IMPOTERを選択します。
<img width="798" alt="スクリーンショット 2018-11-02 2.05.28.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/13e0f20f-05f2-935b-cf65-205ef12ee0df.png">
テスト中の中にあるVRM_IMPORTERをチェックします。
<img width="794" alt="スクリーンショット 2018-11-02 2.09.57.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/9ae25a1c-ac1d-2349-599b-ea4d9cabdcb2.png">

インポートでVRMが選択できるようになっていれば成功です。
##Blenderでの操作
###BlenderにVRMをインポート
VRM_IMPORTERによってインポートにvrmが追加されてるのでインポートしましょう。元からあるブロックは消しちゃってください。
<img width="628" alt="スクリーンショット 2018-11-02 1.09.15.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/b601e4ec-5dbf-cf58-a45c-ea50c9fd3e85.png">


###ポリゴン数削減
メインではないので割愛します。
[このサイト](http://shiasakura.hatenablog.com/entry/2018/02/17/232554)がとてもわかりやすいです。

###[重要]モデルを回転
このまま保存してVRChatまで持って行くと、目の位置がおかしいことになります。(経験談)
原因は、**UnityとBlenderの軸の向きが違う**からです。
なので、Blender内でモデルを回転させましょう。
Unityに持って行った時にこの向きを向いていれば成功です。
<img width="861" alt="スクリーンショット 2018-11-02 1.20.55.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/d2372922-5be5-76ff-b21a-b2a2d88ed13a.png">
こうなるように回転させましょう。自分はz軸で270°回転させると成功しました。
<img width="293" alt="スクリーンショット 2018-11-02 1.20.59.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/158a51d9-24e2-bf95-8bda-bf03c627c570.png">


###blendファイルとして保存
<img width="425" alt="スクリーンショット 2018-11-02 1.27.57.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/cf6744ba-5239-7f5d-832a-92e0cf3daa64.png">


##Unityでの操作
###blendファイルとvrmファイルをインポート
両方assetsに入れるだけで大丈夫ですが、vrmファイルはそれ用のファイルを作った方がいいと思います。あとで不要になった時に削除しやすいので。

###boneの設定
blendファイルを入れてできたモデルを選択します。
まずはRigのAnimation TypeをHumanoidに変更します。
次にUpperChestのboneがついてるとエラーを吐かれるので、boneの設定をいじります。
configureを押して編集画面に移行します。
<img width="289" alt="スクリーンショット 2018-11-02 1.31.03.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/eb3e1122-0bbf-1e67-6312-53aba419110b.png">
Chestの部分にJ_Bip_C_UpperChestを入れて、UpperChestはNoneにします。
<img width="471" alt="スクリーンショット 2018-11-02 1.33.49.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/be0de91c-2d7f-2a85-254d-a3120dc0d7a7.png">
できたらDoneを押してApplyしましょう。

###マテリアル名通りにテクスチャをつける
blendファイルをHierarchyに入れてから、マテリアルの設定をします。
マテリアルが勝手についてますので、同じ名前のものをVRMをインポートした時に生成したマテリアルに変えてください。めんどくさい…
<img width="1421" alt="スクリーンショット 2018-11-02 1.51.32.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/5c29a89e-39bf-e3e2-c6bb-4513a4a566c3.png">

###VRChat用の設定
ここからは普通のVRChat用設定と同じです。
[このサイト](https://vtuber-love.com/vrchat-avatar-upload/)がわかりやすいです。
設定をしてbuiltまでやっちゃいましょう。
###完成！

#Unity×Blender
メリットでも少し書きましたが、blendファイルを編集すると新たに読み込む必要もなく変更が反映されます。
ヒエラルキー内のモデルからOpenを押すと勝手にBlenderが立ち上がります。そこで変更を加えて保存すると、その変更がUnity上で反映されます。
髪だけ分割させて扱いたい！って思いついた時など、意外と便利なので利用してみてください！
<img width="428" alt="スクリーンショット 2018-11-02 1.54.35.png" src="https://qiita-image-store.s3.amazonaws.com/0/277194/9b3d1e3b-c76a-9abd-905e-772d39b47ee9.png">


#最後に
無料でここまで環境が整ってる世界すごいですよね！！！
みんなもVRChatという新たな世界にオリジナルアバターで参戦しましょう！