VRChat で利用するアバターは予め運営に用意されたものだけでなく、ユーザー自らが作成した 3D モデルを利用する事もできる。3D モデルは BOOTH 等で販売されているものもあり、3D モデリングできなくともカスタマイズしてオリジナルのアバターを利用できるようになっている。
このページでは VRChat でオリジナルのアバターをアップロードして利用する方法を紹介しよう。
VRChat でアバターをアップロードする条件
VRChat でアバターをアップロードするには、トラストランクを New User 以上に上げなければいけない。
Visitor から New User に上がる条件は不明となっているが、プレイ時間やフレンドの数、訪問したワールドの数などから総合的に判断されるらしい。自分の場合はプレイ時間12時間前後、フレンド数10人程度、訪問ワールド数は不明だが15-20程度だったと思う。また、Steam アカウントでなく VRChat アカウントで登録する必要があるようだ。
自分の現在のトラストランクは VRChat にログインした状態で Social 欄から確認できる他、ランクが上がった際には運営からメールが届く。
VRChat でアバターをアップロードする際に必要なもの
VRChat にアバターをアップロードするには以下のものが必要となる。
- Unity
- VRChat Avatar SDK
- 3D モデル
Unity は VRChat 用にバージョンが指定されているので、Unity Hub を利用してインストールする。
利用するバージョンは以下の URL から確認できる。現時点では Unity 2019.4.31f1. のようだ。
Currently Supported Unity VersionUnity Hub インストール済みであれば、このページにある、「Click here to install the current version of Unity via Unity Hub.」をクリックすると、Unity Hub で該当のバージョンをインストールできる。
Unity Hub の利用方法は以下の記事を参照してほしい。
Unity HUB でバージョン指定及び複数の Unity をインストールする | Lonely MobilerVRChat Avatar SDK は VRChat にログインし、「Download」ページからダウンロードできる。
3D モデルは Booth から無料の物をダウンロードした。今回利用したのは以下のモデル。
オリジナル3Dキャラクタ "Rin" - A2 Games - BOOTHモデルの利用の際には利用規約をよく読もう。
また、モデルによっては Dynamic Bone と呼ばれる物理演算を導入するためのアセットを利用している。これは有償のアセットでそのままではビルド時にエラーがでるため除外して利用したいのだが、いちいち使っていないアセットを手動で削除するのは面倒くさい。なので、以下の Missing Remover というプログラムを利用する。
Missing Remover - RiClothes Store - BOOTHこちらもダウンロードしておこう。
Unity を用いた VRChat アバターの取り込みとアップロード
Unity Hub を起動して「新規作成」からプロジェクトを作成しよう。
この際、Unity Hub に複数バージョンの Unity をインストールしている場合は、VRChat 用のバージョン(現時点では 2019.4.31f1)であることを確認しよう。
テンプレートは 3D を選択、プロジェクト名は何でも良い。「作成」ボタンを押すと、Unity の画面が現れる。
Unity が開いたら VRChat SDK をインポートしよう。メニューの Assets -> Import Package -> Custom Package を選択しよう。
先ほどダウンロードした VRCSDK3-AVATAR を選択しよう。
Import Unity Package というダイアログが出ると思う。すべてにチェックが入っていることを確認し、右下の「Import」ボタンを押そう。
インポート完了したら VRChat SDK のダイアログが出ると思う。出ない場合でもメニュー欄に「VRChat SDK」があればインポートは成功している。
VRChat SDK がインポートできたら 3D モデルをインポートしよう。先ほどと同じようにメニューの Assets -> Import Package -> Custom Package からインポートしても良いが、エクスプローラーから Unity の画面にドラッグアンドドロップでインポートすることもできる。
インポートするファイルは 3D モデルによって異なるが、概ね VRChat 向け 3D モデルであれば unitypackage が用意されていると思う。今回利用する Rin の場合には「Rin VRChat Avatar 3.0 Ready Package.unitypackage」というファイルが用意されているので、こちらをインポートしよう。
インストールすると Project 欄に Rin のファイルが追加される。Rin Scenes を Hierarchy にドラッグしよう。
Hierarchy に追加すると、「Rin(VRChat No Dynamic Bones)」と「Rin(VRChat + Dynamic Bones)」の二種類が現れる。Dynamic Bone アセットを利用していない場合には一つ目の「No Dynamic Bones」と書かれたほうを利用する。どちらかのプレハブを Sample Scene に移動、もしくは利用しないほうを削除するなどして、シーン内にアバターが一つある状態にしよう。
シーンを削除するにはシーンを右クリックして「Remove」を選択しよう。
これでアバターをアップロードする準備ができた。
Missing Remover でDynamic Bone 付きのアバターから Dynamic Bone を削除する
Dynamic Bone を所持していないのにアップロードしたいアバターが Dynamic Bone 適用済みのものしか無い場合には、この段階で Missing Remover を利用しよう。
上記 Booth からダウンロードして解答したら「missing_remover_v1.1.0.unitypackage」というファイルがあるので、Unity にドラッグアンドドロップなどしてインポートしよう。
インポート成功すると、メニューに「RiClothes」という項目が現れ、その中に「MissingRemover」がある。
これを選択すると、以下のようなウインドウが表示される。
Hierarchy から Dynamic Bone 込みのアバターを Missing Remover 右上の欄にドラッグし、「実行(Run)」ボタンを押そう。そうすると選択したアバターから Dynamic Bone が削除される。
Unity から VRChat Avatar SDK 3 でアバターをアップロードする
アバターの準備ができたらアップロードしよう。Unity のメニューにある「VRChat SDK」から「Show Control Panel」を選択して VRChat SDK の画面を表示させよう。
以下のようにログイン画面が表示されるので、ログインしよう。
ログイン成功したら、「Avatar Creator Status」という項目がある。
ここが「Allowed to publish avatars」となっていればアバターをアップロード可能だ。もしそうでないなら、フレンドを増やしたりログイン時間を伸ばす、様々なワールドに遊びに行くなどしてトラストレベルを上げよう。
アップロード可能の状態であれば、「Builder」タブを選択しよう。
アバターに問題がある場合は警告などが表示される。アラート程度なら一応アバターとして利用は可能のようだ。また、Oculus Quest 向けにもアバターを表示する場合には「Switch Build Target to Android」を選択して Android 向けビルドにしよう。(何故かというと実は Oculus Quest の中身は Android が動いているのである。余談だが Android アプリも動かすことができる)
Oculus Quest 向けは様々な制限があり面倒くさいので、ひとまずは Windows 向けにビルドしよう。画面下部の「Build &Publish for Windows」ボタンを押そう。
ビルドには多少時間がかかる。ビルドが正常に終わると、以下のような New Avatar の画面が表示される。
Avatar, Name Description などは自分だけが使うのであれば適当に好きな文言を入れれば OK。Sharing に関しては「Public」にすると誰もが自由にそのアバターを利用可能となってしまう。配布されているアバターの利用規約次第ではあるものの、基本的には自分で作ったものでない限りは「Private」にしておいたほうば無難だろう。
最後に一番下の注意事項が書かれた項目にチェックを入れ、「Upload」ボタンを押そう。
アップロードに成功すれば「Update Complete!」と書かれた小さなダイアログが表示される。
この状態で VRChat の Web ページを見ると、My Avatars の欄に今アップロードしたアバターが表示されるはずだ。
ゲームにログインすると Avatar 欄にも表示されていると思う。
アバターを変更して正常に表示されるか確認しよう。
これで OK だ。