【VRChat】自作ワールドのテストアップロード方法を解説【Unity】

投稿日:2018年8月16日 更新日:

VRChatの自作のワールドをテストアップロードするまでの手順は?
ワールドを作り込む前に、アップロードまでの流れを知っておきたい
こんな疑問に答えていきます。
2018年8月からHTC ViveでVRChatを利用している僕が、実体験を元に解説していきます。

今回は、自作ワールドのテストアップロード方法を解説していきます。

前回までで、VRChatのSDKを導入しました。

今回は公式のマニュアルに沿って、テストアップロードをします。
ワールドを作り込みする前に、仮の作品をテストでアップして、全体の流れをつかみます。

この流れが理解できれば、あとは仮の作品を作り込んでいけばいいだけですね。
では、解説していきます。

UnityとVRChatのSDKのインストールについては、前回のこちらの記事をご参照ください。

【VRChat】ワールド作成のためにSDKを導入する作業の解説【Unity】

VRChatの公式ページの開発者向けページのワールド作成のこちらのページを参照していきます。

The VRChat Developer Hub - Creating Your First World
https://docs.vrchat.com/docs/creating-your-first-world

前回までの作業

前回の記事で、UnityでVRChatのSDKを開くところまでお話ししました。
開いている状態から、説明していきます。

1.新しいファイル(シーン)を作成する

(1)シーンを開く

シーンとは、ようするに、ファイルのようなものですね。

シーンとは
シーン (scene) には、ゲームの環境とメニューが含まれています。(中略)
各シーンに、本質的にゲームをデザインし構築する環境、障害物、装飾を配置します。
シーン - Unity マニュアル
https://docs.unity3d.com/ja/current/Manual/CreatingScenes.htmlより引用

Unityのメニュー、ファイルから「新しいシーンを作成」します。

(2)シーンに空のGameObjectを作成

ゲームオブジェクトとは、部品のようなものですね。

ゲームオブジェクトとは
ゲーム内のすべてのオブジェクトは、キャラクター、アイテムからライト、カメラ、特殊効果まで、すべてが ゲームオブジェクトです。
ただし、ゲームオブジェクトは単独では何もできません。(中略)プロパティーを与える必要があります。
ゲームオブジェクト - Unity マニュアル
https://docs.unity3d.com/ja/current/Manual/GameObjects.htmlより引用

ゲームオブジェクトメニューから、「Create Empty」を選びました。

(3)VRC_SceneDescriptorコンポーネントをアタッチ

コンポーネントとは、設定値のことでいいと思います。

コンポーネントとは…
Components (コンポーネント)はオブジェクトやゲームでの振る舞いに関する心臓部です。
コンポーネントはすべての GameObject (ゲームオブジェクト)の関数の一部です。
https://docs.unity3d.com/ja/current/Manual/UsingComponents.htmlより引用

VRC_SceneDescriptorというコンポーネントを探しましょう。
検索窓に入れて探した方が早いですね。

これを、サイドバーの先ほどの、ゲームオブジェクトにドラックすれば、適用されました。

適用されたので、サイドバーの部分に、このオブジェクトに設定できるメニューが増えましたね。

(4)シーンにVRCWorldプレハブを配置

VRCWorldプレハブのファイルはここにありますね。
見つからなかったら「Prefabs」で検索してみましょう。

この中から、とりあえず、椅子を選んでドラックしてみました。

(ってか、1行で終わってるけど、ここがメイン作業なんじゃね)

2.スタート地点(スポーンポイント)を作成する

ステップ2 - スポーンポイントを作成する

(1)シーン内に少なくとも1つのポイントを設定して、スポーンポイントを作成する

スポーンポイントとは、ワールドに降り立った時のスタート地点って意味ですね。

スポーンポイントとは
水中において卵が孵化することを意味するが、これに見立ててマップにプレイヤーキャラクターが出現するという意味で使われる
https://ja.wikipedia.org/wiki/スポーン_(オンラインゲーム)より引用

A.空のGameObjectを作成

先ほどと同じですね。
メニュー>GameObjectから、新しいGameObjectを作成します。

B.ユーザーを表示させたい場所に配置

今作成した画面上オブジェクトの矢印(赤、緑、青)をドラッッグすると、移動できますね。

今は、仮のワールドなので、別に開始位置はどこでもいいと思うので、適当に動かします。

C.VRC_SceneDescriptorのSpawn配列(spawns array)にGameObjectを追加

Aで作成したゲームオブジェクトを、サイドバーの「Spawns」部分にドラッグして、中にリストとして加えました。

D.必要な数だけ、このスポーンポイント設置を行う

複数のスポーンポイントがある場合は、「スポーンオーダー」プロパティを変更して、スポーンポイントにスポーンする順序を選択できます。
https://docs.vrchat.com/docs/creating-your-first-worldより引用

スポーンオーダー(Spawn Order)のタブを押すと、ランダムなどの、順番の設定が可能です。

3.ルーム動作の重要なオプションの設定(カメラ、通信など)

ステップ3 - ディスクリプタ設定のメッシング(Messing)

ルームの動作のオプション的な設定(VRC_SceneDescriptorの設定)はたくさんありますが、
その中で重要な設定をしていきます。
https://docs.vrchat.com/docs/creating-your-first-worldより引用

ルームの動作のオプション的な設定を行なっていきます。

(1)Reference Camera(参照カメラ)

「プレーヤーが部屋に入った時に、自由に設定を適用できるカメラ」
https://docs.vrchat.com/docs/creating-your-first-worldより引用

これはたぶん、ワールドに入った時の最初が狭い廊下とかだった場合に、どちらの方向を向くか設定できるということだと思います。
狭い廊下で、壁向きから始まったら、ちょっと困りますよね。

(2)Respawn Height -Y

プレイヤーが復活したり、落ちたりした時に、復活するときの高さ。
https://docs.vrchat.com/docs/creating-your-first-worldより引用

これは、穴に落ちるオプションがあるワールドで、落ちたときにも大事になってくるのだと予想します

(3)Update Time in MS (MSの更新時間)

ワールド内で、ゲストが相互に通信する頻度の設定。
これはユーザーの動きの滑らかさ、ピックアップの動きに影響します。
ほとんどの場合、デフォルトの10msが良いはず。
(多くのユーザーが時間を増やせます。)
https://docs.vrchat.com/docs/creating-your-first-worldより引用

これ、Update Time in MSの数値の説明はわかるんですけど、33の数値から動かせないんです。
わかったら追記します。

(4)その他

設定はVRC_SceneDescriptorページにあります。
https://docs.vrchat.com/docs/creating-your-first-worldより引用

4.ビルド(アップロード)の設定を行う

ステップ4 - [ビルド]タブに移動する

(1) Show Build Control Panelに移動する

VRChat SDK > Show Build Control Panelで、開く
作成中のワールドでの設定オプション、構築オプションが表示されます。
https://docs.vrchat.com/docs/creating-your-first-worldより引用

これは上のメニューから開けます。

ポップアップでShow Build Control Panelはでますが、「Settingからログインしろ」と書いてありますね。

指示通りに、今度はVRChat SDK > Setting から、アカウント情報(ユーザー名、パスワード)を入れますしょう。
アカウントに関しては、前回の記事で登録手順を解説しました。

Unityのバージョンについて
ここでUnityのVersionに関する警告が出てしまいました。
あれ、最初にアップデートしたはずなのに。

オススメされているUnity 5.6.3って結構古いんですけど、本当に必要なのかな
一応、従ってインストールし直しました。
(そ、そんな厳密なんでしょうか)
(何かわかったら追記します)

こちらにバージョンについて書かれています。

Requirements
We're going to need a couple things before we can get started,

Unity 5.6.3p1
https://docs.vrchat.com/docs/setting-up-the-sdkより引用

Unity 5.6.3p1
https://unity3d.com/unity/qa/patch-releases/5.6.3p1

User APIの種類とは
User APIを選ぶ欄があります。
Relese、Dev、Betaが選べる
デフォルトではReleseです。
これの意味は調査中です。

ログイン成功

A.プレイ時間少ないと警告が出ます

ログインすると…なんと、ここで「プレイ時間が少ない」と、警告が出ます。

セキュリティの理由で、プレイ時間が少ない人は、アバターやワールドをアップロードできないよ
もっと遊んでね
解禁したらメールするよ
自分のデバイスでテストしてね

ってことだと思います

ちょっ…ここ…一番大事なとこじゃないですか
ま、でも、たしかにまだ僕は数日くらいしかプレイしてないからかもしれません

プレイ時間が少なすぎるとアップロード許可されません

B.ログイン後の画面

ログインすると、画面がこのように変わり、メニューが出現します。
まず、レイヤー設定などのボタンについて説明します。

(2)VRChatに合わせてレイヤーを設定する

Show Build Control Panelに「Setup Layers」のボタンがありますね

レイヤーを設定とは…
調査中

(3)VRChatに一致するようにコリジョンレイヤーマトリックスを設定する

Show Build Control Panelにボタンがあります。

コリジョンレイヤーマトリックスとは…
調査中
(おそらく「壁」のような、ぶつかるぶつからない判定のあるレイヤーかな)

(4)実行時に自動的に3Dオーディオソースに3D空間を適用する

Show Build Control Panelにチェックボタンがあります。

3Dオーディオソースとは…調査中
(おそらくどちらから音が聞こえるかとかの設定かな)

(5)シーン内の3Dオーディオソースに3D空間化を適用する

Show Build Control Panelにボタンがあります。
押すとポップアップが出ます。
(OKしても変わらない)

5.自作ワールドを一般に公開する

ステップ5 - あなたの世界を構築する

最後は、ビルド、つまり自作ワールドをアップロードして構築する段階ですね。

次に世界を構築する必要がありますが、自分が何をやるかを選択する必要があります。

テストビルドを作成して、アップロードせずに自分の世界をテストしたり、
自分の世界をVRChatに公開したりできます。

TestとPublishの両方の見出しの下にLast BuildとNew Buildボタンがあり、
Last Buildはテストまたはアップロードのいずれかに世界のLast Buildを取ります。

新しいビルドオプションは、テストまたはアップロードのために新しい世界を一緒にします。
https://docs.vrchat.com/docs/creating-your-first-worldより引用

ま、ようするにテストと本番が選べるので、使い分けてね、ってことですね。

(1)テストしたい場合

あなたの世界をテストしたい場合は、Test見出しの下のNew Buildボタンを押すと、
あなたの世界の新しいバージョンが構築され、VRChatで世界中に立ち上げられます。
https://docs.vrchat.com/docs/creating-your-first-worldより引用

テストしたい場合も、本番も、上書き保存か、新規作成かを選べるってことですね。

テストしてみた

とりあえず、テストを押してみました。
ファイルの保存画面が出て、一度シーンを保存します。

その後、アップロードしています…という画面が出て、待機中になりました。

でも、アップロードは失敗してしまいました。
やっぱ、まだ権限がないからですね。
成功したら、更新します。

Last BuildとNew Build
一度ワールドをアップロードすると、この2つのボタンが出現します。

Last Build…前回のビルドに上書き
New Build…新しいビルドとしてアップロード
ってことだと思います。

(2)[Number of Clients]オプション

Number of Clients…つまり、クライアントの数のオプションでは、トリガーに使うみたいです。
特殊な機能をワールドに実装する時に、いじる値のようですね。

[Number of Clients]オプションは、トリガーなどのネットワーク化された動作をテストするために複数のクライアントを開く場合に使用します。
https://docs.vrchat.com/docs/creating-your-first-worldより引用

クライアントとは
クライアント・サーバシステムにおいて、サーバに対してサービスの依頼を行いその提供を受けるような、コンピュータまたはアプリケーションやプロセスのことをいう。
サーバからサービスを受ける側を指す。
https://ja.wikipedia.org/wiki/クライアント_(コンピュータ)より引用

(3)Publishアップロードする場合

Publishする、公開のアップロードをする際の話です。
説明などの項目を埋めるということですね。

今度は、Publish見出しの下にあるNew Buildボタンを押すことであなたの世界を構築しアップロードすることができます。
これはあなたを世界に構築し、アップロードの準備を整えます。
Unityはプレイモードに入り、以下のものを含むアップロードに関する詳細を入力することができます。

* ワールドの名前
* プレイヤーの許容量
* 説明
* コンテンツの警告

あなたがVRChatにコンテンツをアップロードする権利を持っていることを確認してから、アップロードボタンを押すことができます。

(4)Manage Uploaded Contentの画面

アップロード後の管理画面です。

VRChat SDK > Manage Uploaded Content
部屋はVRChatにアップロードされ、終了したらゲーム内で見ることができるか、SDKのコンテンツマネージャを介して見ることができます。

現在は、アップロードが許可されていません、と表示されています。

(5)アップロードに失敗した場合

あなたの世界がアップロードに失敗した場合は、エラーがあるかどうかを確認するためにコンソールを確認してください。
ヘルプが必要な場合は、他のドキュメントを確認するか、Discordに投稿してください

エラーの際はUnityのエラーメッセージウィンドウを見て、自分で考えて見てということだと思います。

というわけで今回は以上です。
この後の流れとしては、少しの部品を置いただけだった、シーンの作成の部分を作り込んでいく作業だと思います。
次回はその辺を解説しようと思います。

-Unity, VRchat

Copyright© MMD-PVから作詞作曲までやる、ボカロPしんりんの製作ノート , 2024 All Rights Reserved.