【Unity】UnityからVRC用のアバターモデルをVRM形式に出力したけど失敗したからVRoidStudioで対応した話

# 最初に

どうも、ろっさむです。
今回はUnityからアバターモデルをVRMに出力した結果、失敗した話をまとめていこうと思います。

# VRMとは

**アバターモデルのデータフォーマットの定義**のことを指します。このVRMではアバター特有の情報を扱いやすい状態になっています。例えば**テクスチャやマテリアルなどのデータがVRM形式のファイル1つにまとまっている**ため、アプリケーション内でのアバターロードが実行時に可能になったりします。

VRMに対応したアプリケーションやサービスもいくつかあります。

- Vroid Studio
- バーチャルキャスト
- cluster.
- オープンワールドゲーム「クラフトピア」

etc...

他にもVRM4Uを使用することでUE4へ持ち込むことも可能です。

今回はcluster.で勉強会を開いた際に、VRCで使用しようとしていたアバターをcluster.に持ち込もうとして失敗した過程を残しておこうと思います。ちなみに失敗の理由は、アバターモデルのサイズの問題です…。

更に詳しい情報が知りたい方は以下の公式リファレンスや記事がおすすめです。

- [「VRM」って何？どんなことができる？（公式リファレンス）](https://vrm.dev/vrm_about/)
- [「VRM」とは？ そのメリットや対応アプリなど情報まとめ](https://www.moguravr.com/vrm-matome/)
- [第904回：VRMとは](https://k-tai.watch.impress.co.jp/docs/column/keyword/1183088.html)

# 出力手順と注意点

こちらに関しては以下の記事が非常に参考になるため、こちらを確認しながら進めれば基本的に問題ないと思います。

[自分のアバターをVRMにして遊ぶ](http://pc-technique.info/2018/11/60/)

ただしcluster.でのVRM形式ファイルにはいくつか制限があるため、ここを注意点する必要があります。

cluster.でのVRM形式ファイルをアップロードする際に、VRCで使用していたアバターをそのまま使おうとすると…

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/e2d6d633-013a-e817-3c1c-e5f8102bb4fb.png)


上記のように制限に引っ掛かりアップロードに引っ掛かってしまいがちになるかと思います。
cluster.では以下の制限があります。

[カスタムアバターの制限（公式リファレンスより）](https://clusterhelp.zendesk.com/hc/ja/articles/360029465811-%E3%82%AB%E3%82%B9%E3%82%BF%E3%83%A0%E3%82%A2%E3%83%90%E3%82%BF%E3%83%BC%E3%81%AE%E5%88%B6%E9%99%90)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/1dc30ec0-c176-922f-4b3b-61186c9ff0e1.png)


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/068ed515-8e2c-7c63-1768-d40b4c56823c.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/d03608f8-b2dc-6db6-6e40-ada3e6edebee.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/32c379e7-e644-e5ec-81c6-f1fe9fde66d5.png)


マテリアル数はまだしもblendshape数やポリゴン数などはモデリングツールを使わないとどうにも削減は難しそうです。

ここから選択肢は4つに分かれます。

- VReducerを使用する
- VRoid製のアバターを作成してVroidStudioからアバターの軽量化を行う
- boothでcluster.利用可能なアバターを購入する
- REALITYなどの別サービスからアバターを作成してcluster.側へ連携して持っていく

# 「VReducerを使用する」方法について

こちらに関しては、実はcluster.でのイベント主催が終わったあとに知った方法なので、まだ試していません。

次回開催時に向けて試そうと思っているので、その際には以下の記事を参考にしてみようと思います。

[VReducerを使ってVRoid アバターをclusterの制限に対応させる(ついでに表情も編集する)](https://qiita.com/htomine/items/4ad53c0d4c526cd433b7)

# 「VRoid製のアバターを作成してVroidStudioからアバターの軽量化を行う」方法について

今回はこちらの方法を選択しました。

元々作成していたVroid製のモデルがあったので、こちらのVRMを開いて以下のようにVroidStuidioを用いて `撮影・エクスポート > エクスポート`を選択した状態にしておきます。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/49008cbf-227c-67bc-0324-a5a44bd6f37a.png)

まずはポリゴン数を32000に収める必要があるため、`髪の断面形状を変更する`と`透明メッシュを削除する`にチェックを入れました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/0f6a07f8-0f70-35c6-49f1-b65a63f17254.png)


次にマテリアルを8以下にするため設定を`8`に変更します。


![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/9f366450-1569-2510-75be-b73a50c2d247.png)

テクスチャに関しても解像度を`2048*2048`に変更しておきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/aef01e9b-fea0-6316-7449-aa78ea98f61f.png)

次にボーン数を128に…と思ったらボーン数はクリアしていました。

これで「エクスポート」を押下してタイトルと作者とバージョンだけ記入して完了です。

無事cluster.のマイページにてアップロードができました。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/a34b6306-fda8-16a6-6799-68431c83cd4c.png)

# 「boothでcluster.利用可能なアバターを購入する」方法について

こちらが一番シンプルに金で解決してます。
「[booth](https://booth.pm/ja)」というアバター等の非常に多ジャンルな創作物が販売されている総合マーケットです。

このサイトの検索欄に「cluster vrm」などと記入して検索をかけると…たくさん出てきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/37ab40cd-486c-8c14-2418-798a2c625d68.png)

ちなみに私はVroidStudioによる削減を試す前に以下のモデルを購入してしまいました。可愛いからOK。

「[オリジナル3Dモデル - Stevia -](https://booth.pm/ja/items/2500530)」
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/92942ace-1439-7b73-86fe-f16b080b71aa.png)

# 「REALITYなどの別サービスからアバターを作成してcluster.側へ連携して持っていく」方法について

これに関しては本当に何も試していないので何とも言えないのですが、非常にお手軽に作成できそうなのが以下の記事を見てわかります。

[clusterでREALITYのアバターを使おう！着せ替えゲーム感覚で簡単に作ってアップロード！](https://vr-lifemagazine.com/cluster-reality/)

REALITYについては以下の公式サイトへGO

[REALITY バーチャルライブ配信アプリ](https://reality.app/)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/36899/be1ee200-dea1-f8ff-c9a5-4ba59e877d47.png)

# 最後に

VRMでの出力方法を記載している記事は多くあるので、こちらに迷うことはあまりないかと思いますが、VRMに対応したサービスやアプリケーション毎に制限などが存在するため、初心者の方がつまずく原因になるのではないかと、今回対応方法をまとめてみました。
ただVRMで出力ができると先ほど紹介したCluster.だけでなくUE4でのゲーム制作などにも使用ができたりするので、試して色々遊んでみるのは非常に面白いと思います。