VRChat。アバターアップロードを初めてやってみた。課題は盛沢山。
VRChatをVRゴーグルで楽しむにはデスクトップアプリOculusを通して遊ぶのがいいと思った前回。今回はオリジナルのアバターをアップロードしてVRChatの世界を歩き回れるようにしたいと思います。
VRChatではトラストレベルというものが存在しこのレベルが「New User」にならないとアバターのアップロードができません。
レベルは以下、ザックリ解説。
さらに上のレベルもありますが、ここでは割愛。
レベルアップ条件は非公開のため何が基準でレベルが上がるかは分かりませんが、僕は数回アクセスして、いろんな方とおしゃべりしているうちにNew Userへ上がりました。遊んでいればそのうち上がっていくようです。
ということでアバターアップロードに初挑戦。
なお、この詳しい説明はネット上に素晴らしい記事が沢山上がっていますのでこちらも割愛します。ここでは要点と作業時に困ったことなどを書いていきたいと思います。
まずはアバターの用意ですが、以前Clusterのために作ったものがあるのでこちらを使用します。
VRoidStudioというデスクトップアプリで作ったアバター。
このアプリは直感的にアバターが作れて非常に便利です。しかも無料ときた。すごい。これを作っているのはピクシブ株式会社。みんなたくさん作ってBOOTHで販売しよう!ってことだろうか…。それにしても便利。
アップロードのために必要なもの以下4つ。
Unityとはゲーム開発用の統合開発環境を搭載した3DCGソフトのようなもので、これまた無料で使えるのがすごい。(有料版もあります)
インストールがすべて終わったらアバター取り込み環境を整えます。
なお、この辺りの技術も日進月歩で進化しているはずなので、今回書いている内容もいずれやり方は変わることでしょう。あくまで現バージョンのやり方。
Unityのプロジェクトを立ち上げ、AssetsにVRChat Avatars用 SDKをドラッグアンドドロップでインポート。
続いてVRM_Converter_for_VRChatをインポート。
以上、準備完了。
いよいよVRoidStudioからVRM形式で書きだしたアバターを取り込んでみます。とりあえず、細かい設定は気にせず取りこむとどうなるんだろう…。
メニューのVRM0よりインポート。
インポートが終わったら、さらに上記メニューのVRM0内にある「Duplicate and Convert for VRChat」を適用。VRChat用に複製ってことですね。
Duplicate and Convert for VRChatを適用する際に保存するファイル「.prefab」の場所はAssetsフォルダーにする必要があるみたいです。
色々調べる中でそのままアップロードではなく調整を施す方が良いのは理解できましたが、今回はあえて何の調整もせずアップロードしてみます。
VRChat SDKのShow Control PnaerからVRChatへログイン。
ログインに成功しBuilderタブを押すと最下部に「Build & Publish for Windows」のボタンがあるのでクリック。と、その前に…、なんだかエラーが沢山あるっぽいぞ…。
上から順に一つずつエラーと警告を確認していきます。
Shader Kwyowrds Utilityってなんでしょう…。次。
フルボディIKって何でしょう…。次。
これはまずい。パフォーマンス改善必須です。
同上、改善必須。これ以降もいくつか注意事項がありましたがいずれも減らしてよ!っていう注意書きでした。
ということで、アップロードは一旦やめておき、VRoidStudioでポリゴン数等の再調整を行うことにしました。調べてみたところVRChat公式にアバタークオリティに関する記載があったのでこれを参考にします。(こちらより)
今までのUnityプロジェクトは削除して再びVRoidStudioへ。
今度はポリゴン数31950、マテリアル数6、ボーン数81です。アバタークオリティ上ではExcellentのレベルがそれぞれ32000、4、75となるので、その次のレベルのGoodには該当しそうです。(他にも評価項目は沢山あります。)
この状態でUnityに取り込みます。
その後、メニューのVRM0内にある「Duplicate and Convert for VRChat」を適用しますが、その際、揺れ物設定を下記「Remove Swaying Objects」にして、この部分をいったんまっさら状態にしました。
この後、「Remove Swaying Objects」でまっさらにした設定を一から設定し直します。しかし、そもそも自分のUnity能力が低すぎて、思うように調整が進みません。オリジナルアバターのアップロードはUnityの慣れが必要だということをこの時点で強く認識することになりました。
とりあえずインポート状態でアップロードを試みます。
警告は残ってますがエラーメッセージは消えました…。
気にせず「Build & Publish fo Windows」
Avatar NameとDescription(説明書き)を入力して、いざ「Upload」!!
Complete!!
VRChatを立ち上げてみました。
なんとかVRChat上にアバターをアップロードすることができました。
なんだかんだ初めての作業で、ずいぶん時間がかかりましたけども、細かい設定を気にしなければ数分で完了できそうな作業でした。
それもこれも有志のおかげ。様々です。
これでVRChatと同類のサービスClusterでも使っていたこのアバターが使えるようになりました。そう思うと、この先アバター使用の標準化なんて進めばサービス間での行き来も楽に出来るようになるのかもな~と、そんな夢も膨らんでしまいますね。
といいながらも、今回の様々な課題が頭をよぎりUnityとVRChatAvatarの深い理解をもっと進めねばと課題だらけの現状に夢から引き戻されるのでした。
無事アップロードできてよかった。
アップロードとUnity上での微調整等々に関して下記ページを参考にさせていただきました。