この記事は、エンジニアと愉快な仲間たち Advent Calendar 2024の19日目の記事です。
みなさんは、VRChatというサービスを知っていますか?
Unityで構築されたワールドで、VRヘッドセットを被った人や、デスクトップの人、あるいはスマートフォンの人が一堂に会し、声や、文字や、身振り手振りでコミュニケーションをする新しいタイプのSNS(?)です。
最近、とあるYouTuberがVRChatのおもしろおかしい動画を投稿したことにより注目が集まっており、すごい勢いで人口が増加していると聞きます。
であれば!乗るしかない このビッグウェーブに!!ということで、弊社のマスコットキャラクターであるコニーをVRChatの世界に連れて行こうと思い立ちました。
…ところで、一部の人は「コニー…?」と思っているかもしれないので、ここで少しだけ弊社のマスコットキャラクターであるコニーの紹介を。
コニーは、社内コンペで誕生したマスコットキャラクターです。
頭のぐるぐるが”G”と”C”を組み合わせた物になっているとか、杖の頭に”&”が隠れているとか、“Growth”(成長)という言葉に合わせて葉っぱをまとっているとか、そういう要素が組み合わさっています。(これ、社内でも知らない人多い)
そんなコニーを、VRChatの世界に連れて行きましょうね。
VRChatは、人と人とのコミュニケーション…つまり、アバターが必要です。
すなわち、コニーを連れていくのであれば、コニーのアバターを用意しなければなりません。
一般的なユーザーは、VRChat内に用意されているフリーのアバターを使用したり、Boothなどで販売されているアバターを使用したり、デザイナーにアバターの制作を依頼したりしますが、コニーは弊社のオリジナルキャラクターなので、もちろん配布も販売もされていません。
アバターの制作を依頼することもできますが、アドベントカレンダーのたった1つの記事のために数万円かけて制作を依頼するのはとてもとても無駄に思えます…。(VRChatに連れて行くのは、会社ではなくあくまでも個人が趣味でやっていることなので…)
となると、一般的ではないユーザーのやり方でいくしかありません……そう、作るのです。
アバターは、3Dのデータです。そのため、作るのであれば、3D制作ソフトを使用することになります。
ですので、3D制作で広く使われていて、無料でオープンソースで商用利用も可能な「Blender」というソフトウェアを使うことにします。
導入方法は割愛しますが、Windowsの人はMicrosoft Storeからインストールするのが手っ取り早いです。
さあさあ、インストールが終わったら作り始めましょう。
まーるかいて………
ちょん!!
はい、できました。ね、簡単でしょ。
3Dデータができたら、これをVRChatにアップロードします。
詳しい手順はバージョンによっても変わるので割愛しますが、Unityというゲーム制作ソフトを使用して、VRChat SDKからアバターをアップロードします。
VRChat Creator Companion (VCC) というアバターやワールドを管理するツール(あるいはその互換ソフト)を使用して、アバター用のUnityプロジェクトを作成します。
ここでは、ALCOMというオープンソースなVCCの互換ソフトを使用します。
プロジェクト作成後、Unityを立ち上げたら、VRChatアバターとして動かすための設定をします。
詳しい内容は割愛しますが、以下の作業を行うことになります。
- 3Dデータ(FBX)のインポート
- VRChat Avatar Descriptorコンポーネントの設定
- シェーダーの調整
- リップシンクや表情のアニメーション作成
- ハンドジェスチャで表情を変えるためのアニメーション設定
- 揺れるものの設定
- Expression Menuというクイック設定みたいなメニューの設定
これらを終えた物がこちらです。
よさそうですね。ではこれをアップロードしていきます。
アバターの名前と説明を入力し、(警告が出ていればできるだけ直し、) 一番下のボタンを押してアップロードします。
問題なくアップロードできれば完成……と言いたいところですが、VRChatのアバターは”PC用”、”Android用”(Meta Quest / PICO / スマホ)、”iOS用”の3種類があります。
この画面にある「Selected Platform」のドロップダウンから各環境を選んで、同じようにアップロードしていきます。
アップロードが完了したら、VRChatのWebサイトから、アバターの概要を確認できるようになります。
“PC”、”Android”、”iOS”にアバターのパフォーマンスランクが表示されていますね。これで正常にアップロードできたということです。
では、実際にVRChat内で見てみましょう。
今回はPC VR環境で見てみます。
よさそうですね。
じゃあ実際に使用してみると……
じゃじゃーーん!
ということで、コニーをVRChatに連れて行くことができました。わりと簡単でしたね。
みなさんもその気になれば自分でアバターを作ってVRChatに連れて行くことができるので、機会があればやってみてくださいね。
余談ですが、VRChatのアバターは、Unityで動く支援ツールによって、VRMという日本生まれの汎用的な3Dアバター規格に変換することも可能です。
VRM形式は、ClusterやResoniteといったVRChatの類似サービスや、AVATAVIというARアプリ、FumiFumiといった写真合成アプリで使用することができるため、より幅広い使い方をすることもできます。いろいろな方法で活用してみてください。