[VRChat]購入したアバターはどうやってアップロードするの?
バーチャルマーケット等でVRChatに興味を持った方々、ようこそ。
私が配布しているアバター『TOONY FOX』を使って、購入直後からアップロード、Quest対応までを解説してゆきます。
⚠注意⚠
VRChatにアバターやワールドをアップロードするには『トラスト値』という信用度を上げる必要があります。
VRChatのアカウント作成直後は基本的にアップロードが出来ないので、いくつかワールドを巡ったりフレンドを数人増やしておきましょう。
詳しくはこちら
http://ygr.jpn.org/index.php?%E3%83%88%E3%83%A9%E3%82%B9%E3%83%88%E3%82%B7%E3%82%B9%E3%83%86%E3%83%A0
1. Unity 2017.4.28f1 をダウンロード・インストールしよう!
大前提として『Unity』という(本来はゲームを作る)ソフトウェアが必要です。
ただし、VRChatへアップロードするには「2017.4.28.f1」というバージョンでなくてはいけません。
(※2019年9月25日 時点)
ダウンロードは以下のリンクから。
https://unity3d.com/unity/qa/lts-releases?version=2017.4
インストール手順は省略します。
2. VRChat SDK を入手しよう!
VRChatにアップロードするためには VRChat SDK(以下、VRCSDK)が必要です。
ダウンロードは以下のリンクから。VRChatアカウントでログインしましょう。
https://www.vrchat.net/home/download
3. シェーダーをダウンロードしよう!
シェーダーは、ざっくりいうと「陰影をつけるヤツ」です。アニメ調だったりイラスト風のアバターはコヤツの力を借りてます。
大抵の場合は購入ページやreadmeファイル内に使用シェーダーが指定されていますので、探してからダウンロードしましょう。
※配布物にシェーダーが同梱されている場合もあります!
例)TOONY FOX
使用シェーダー:ユニティちゃんトゥーンシェーダー2.0
VRChat向け配布アバターでよく使われているシェーダーは以下になります。
・ユニティちゃんトゥーンシェーダー2.0
・Arktoon-Shaders
・Reflex Shader 2
・まんまるしぇーだー2.0/MnmrShader2.0
・UnlitWF Shader
4. Unityの下準備をしよう!
まずはUnityを起動してプロジェクトを作成します。
もしかしたら画像が違うかもしれません(筆者は Unity Hub を使用)が、ひとまず『プロジェクト名』と『保存先』を指定して作成します。
今回はプロジェクト名を「VRChat_AvatarUpload」にしました。
保存先は適当なフォルダで大丈夫です。(私はDドライブ直下に ProjectFiles を作ってソフトウェアごとに管理してます)
プロジェクトができるとこんな感じの画面が出ると思います。
そして ”Project”という名前のパネル(タブ?)を探します。画像だと左下にありますね。
そして、ファイル名の後ろに「.unitypackage」と書かれている、あるいはファイルの種類が「Unity package file」になっている、ダウンロードしたVRCSDKと各シェーダー、そしてアバターを一個一個、エクスプローラーから Unity の Project パネルにドラッグ&ドロップして放り込みます!
一個一個放り込むたびにこんな感じのウィンドウが出ます。
右下の Import をクリックして、しばらく待ってから次の Unitypackage を放り込みましょう。
放り込んだら Project パネルがこんな感じになります。
4-EX. Dynamic Bone をインポートしよう!
アバターによっては揺れモノのために Dynamis Bone という有料アセットが必要な場合もあります。
例)Inky Cat
Dynamic Bone はこのタイミングでインポートしておきましょう。
メニューバーから Window > Asset Store を選択します。
「Dynamic Bone」と検索して、探しましょう。
購入済みの場合はボタンが「ダウンロード」か「インポート」になってますのでクリックします。
あとは画面の指示に従ってインポートします。
5. VRCSDKからVRChatにログインしよう!
メニューバーの VRChat SDK > Show Control Panel からパネルを呼び出し、VRChatのアカウントでログインします。
ログインできました!
[重要]
Avatar Creator Status: Allowed to publish avatars と表示されていることを確認してください。
違っていればアバターをアップロードすることができません。
この記事先頭の注意書き通り、トラスト値を上げましょう。
6. アバターをセットアップしよう!
アバターのセットアップ方法はいくつかあります。
A: Prefab(プレファブ/プレハブ)が用意されている場合
B: Scene(シーン)が用意されている場合
C: 両方用意されている場合
D: 何も用意されていない場合
6-A. Prefab(プレファブ/プレハブ)が用意されている場合
UnityにはPrefabという機能があります。
購入してインポートした Unitypackage は、いわば素材の集まりです。
せっかく素材が揃っても、それをアバターとして使うために1から設定するのはとても大変ですよね。
どの3Dモデルを使って、どのシェーダーを割り当てて、マテリアルを調整して、Dynamic Bone の値を試行錯誤して、Animation Override を設定して、VRCSDKのスクリプトを割り当てて……。
その素材たちをアバターに組み上げるための「設計図のようなもの」、それが Prefab です。
アバターセットアップのやり方は、Project から Prefab のありそうなフォルダを探し、青いキューブの Prefab を Hierarchy にドラッグ&ドロップするだけです。
(TOONY FOX の場合は後ろに何もついていない方が基本の Prefab です)
6-B. Scene(シーン)が用意されている場合
アバター制作者によっては、セットアップ済みの状態を Prefab ではなく
Scene の方で保存している場合があります。
確かにこちらの方が Unity 初見でもまだわかりやすそうですね。ここ私の反省ポイントです。
やり方も簡単で、Scene のありそうなフォルダを Project から探し、ダブルクリックするだけです。
6-C. 両方用意されている場合
基本的にはどちらでも構いませんが、Scene が実はアップロード用ではなくデモ用の可能性もあるので、同梱しているreadmeファイルを必ず確認しましょう。
6-D. 何も用意されていない場合
readmeファイルを確認しましょう。
もしくは制作者さんに問い合わせましょう。
7. アバターをアップロードしよう!
いよいよアップロードです。長かったですね。
初めてのアップロードの場合、VRChat SDK パネルの Setting をクリックし、Publish の "Future Proof Publish" のチェックを外します。
妙にアップロードが遅いときはこのチェックが外れてるか確認しましょう。
Builder をクリックし、右下の "Build & Publish" をクリックしましょう!
Gameビューでアバター名と説明文(無くて良い)を記入して、アバターが権利的に正しいか確認したら下のチェックボックスを入れて、Upload をクリックします!
アップロード完了!お疲れさまでした!
7-EX. Quest対応アバターをアップロードしよう!
一部の配布アバターにはQuest向けモデルが同梱していたり、モデル自体がQuestに対応して専用のPrefab/Sceneが用意されている場合があります。
TOONY FOX は後者です。
アバターがQuestに対応すると何が嬉しいかと言うと、PCからログインしている人同士でお話しているところに Oculus Quest からログインした人が来たとき、PC側のアバターがQuest対応していないと、Quest側から視たPC側のアバターが変なロボットに置き換えられてしまいます。
本当は可愛い姿をしているのかもしれないのに、これでは嬉しくないですね。
Quest対応させるためにまず、Unity の環境をAndroid向けに変更します。
メニューの File > Build Settings... からウィンドウを開き、
Platform 欄から "Android" を選択したあと、
左下の Switch Platform をクリックしてしばらく待ちます。
※切り替わらない場合はAndroidSDKがPCに入っていない可能性があります。
ここで説明するとさらに長くなるので各自調べてください。
https://www.google.com/search?q=vrchat+android+switch+platform
『6. アバターをセットアップしよう!』の手順でQuest向けアバターをセットアップします。
(TOONY FOX の場合 Prefab フォルダ内の "TOONY_FOX-q" がQuest対応アバターです。)
VRChat SDK パネルの Content Manager をクリックし、先程アップロードしたアバターを探します。
見つけたら、”Copy ID” と書かれたボタンをクリックしましょう。
これでアバター固有のID(Blueprint ID)がコピーされた状態になりました。
このままInspector(インスペクター)パネルの Pipeline Manager を探します。(画像右下)
Blueprint ID (Optional) の右側の空欄に先程コピーしたIDを貼り付け、
下の ”Attach (Optional)” をクリックしましょう!
VRChat SDK パネルの Builder の内容が正しいかどうか確認してから、
"Build & Publish" をクリックして再アップロード!
VRChatでアバターを確認しましょう。右上に青と緑の丸が視えますか?
青はPC、緑はQuestを表しているので、両方がついていたらQuest対応成功です!
本当に、本当にお疲れさまでした‼
8. おわりに
長かった。
この記事を書いたのは、とある問い合わせが最初にあり、
「そういえばUnity初見の人に『PrefabをHierarchyにドラッグ&ドロップしたら全て設定された状態で用意される』なんてわかるわけないよな……」と反省したことがきっかけです。
今後は私の配布アバターのreadmeにこの記事へのリンクを記載するつもりです。
他のアバター制作者の方も、この記事が有用だと思っていただければ参考記事としてリンクを記載してっても構いません。
むしろ拡散お願いします。
※なお、この記事の方法でもアップロード出来ない場合はGoogle先生かアバター制作者さんへお問い合わせください。
以上、渡篠那間江でした‼