2022年にCubeからVRChatワールド作成入門をするのに必要な読み替え
長いことアバター関連の3D制作ばかりをやってきた私ですが、最近お部屋や家具などの内装を作ることを始めています。
その際に使っている参考資料がこちらなのですが。
これを読む前は、VRChatワールド界の神々がBOOTHなどで配布されていたありもののワールドデータを観察したり研究したりするところから入ろうと思ったのですが、オブジェクトもコンポーネントも多種多様なものがズラーーーッと並んでいて、目が回りそうになっちゃって断念しました……。
一方、本書はUnityのCubeという、一番単純な3D形状からワールド作成を始める、というコンセプトの入門書です。このめちゃくちゃ敷居の低いところから始められるの本当にありがたい……。これが無料とかいう衝撃。
執筆なさったかやのみちゃ様に深く感謝です。
とはいえ、 2020年2月に執筆されているもので、SDKのバージョンも異なりますしUnityのバージョンも違います。それゆえ本書に書かれているものと、2022年8月現在の最新バージョンとでは画面や設定方法が違ってるものがいくつかあったので、備忘録も兼ねて私が気づいて調べて読み替えたところを、ここに書き残します。
★この記事は書きかけ記事です。勉強が進み次第、少しずつ更新していきます。
- Standard Assets (PDF 4 ページ目、ページ番号 ii)
- VRChat StarterKit (PDF 5ページ目、ページ番号 iii)
- VRC_SceneDescriptor(PDF 15ページ目、ページ番号 8)
- VRC_Player Mods(PDF 16ページ目、ページ番号 9)
- ワールドアップロード (PDF 21ページ目, ページ番号 14)
- Lighting タブ (PDF 26 ページ目, ページ番号 19)
- PostProcessing のインストール方法(PDF 35ページ目, ページ番号 28)
- マテリアルのHDR設定(PDF 36ページ目, ページ番号 29)
Standard Assets (PDF 4 ページ目、ページ番号 ii)
リンクにあるのは Unity 2018 向けのレガシーパッケージなので導入は不要と判断しました。無くても今のところ大丈夫そう。
最新の Standard Assets と銘されているパッケージは、一人称 / 三人称 のシューティングゲーム向けのパッケージっぽいので、やりたいことと少し違うなあという感じ。
VRChat StarterKit (PDF 5ページ目、ページ番号 iii)
残念ながら配布は終了されているようです。こちらは必要になったら代替を探すつもり。
VRC_SceneDescriptor(PDF 15ページ目、ページ番号 8)
私の環境のせいなのかよくわかりませんが、追加直後はコンポーネントの設定項目が何も出てきませんでした。
適当に元に戻すとやり直しをしたら直りました……なんで~??
もしかしたら追加時のUIバグってだけで、選んでるオブジェクト切り替えたり、Unity再起動したりでも治るかもしれません。
VRC_Player Mods(PDF 16ページ目、ページ番号 9)
ジャンプできるようにする設定の話で追加しているコンポーネントの VRC_Player Mods ですが、World SDK 3 では設定方法が変わっています。
ワールド設定周りは他の設定含めてすべて Udon Behavior というコンポーネントに取って代えられている?ようなので、こちらを追加。
Udon Behavior は最初のうちはペラッペラの設定項目しかありませんが、Program Source から、 VRCWorldSettings の項目を選択すると、ワールド設定の項目が出てきます。
検索窓に World とでも打てばすぐ出てくると思います。選択後は、Unity の親画面側をクリックするとポップアップは勝手に消えます。
4つの入力値が出てきますが、下の画面のように入力すれば問題なくジャンプできるようになりました。
jumpImpulse の数値を上げるとハイジャンプとかができるようになるんだと思います。
ワールドアップロード (PDF 21ページ目, ページ番号 14)
※ 書籍の手順は誤っていません。私が単につまづいただけです。
アバターアップロード時と同じような感覚でアップロード出来ることを期待していましたが、Upload ボタンを押しても何も起こらない現象に直面しました。
これは、ページ 8 で追加した VRC_Scene Descriptor 等のVRChat関連コンポーネントが複数のオブジェクトに追加されており、競合が発生していることが原因でした。
ヒエラルキー上のオブジェクトを確認して、変なところにコンポーネントが追加されていないかを確認してみてください。
私の場合は、床にしていたCubeに Pipeline Manager が余計にくっついていました。
Lighting タブ (PDF 26 ページ目, ページ番号 19)
Lighting タブは Window > Lighting > Settings で出す、との説明がされていますが、Unity 2019 では Window > Rendering > Lighting Settings で出します。
PostProcessing のインストール方法(PDF 35ページ目, ページ番号 28)
PostProcessing のインストール方法が記載されてなさそうだったので、以下の資料を参考に Unity 2019 でのインストール方法を書き残します。
【VRChat】PostProcessingを使ってワールドをより良くする - Qiita
まず、 Unity のツールバーから、 Window → Package Manager を選択。
その後、でてきたウィンドウの右上にある検索欄から、 PostProcessing で検索して出てきた項目のチェックを入れればインストールが完了します。
続けて、Edit → ProjectSettings をクリックして別の設定画面を開きます。 …こういうのがもうしばらく続きます。頑張って……。
Project Settings の画面で、 Tags and Layers を開き、Layers の空欄のところに Post Processing という名前のレイヤーを設定します。
ここからは、元資料でも説明されていますが、図がないのでわからない人向けに書き残しておきます。
次に、MainCamera を選択して、インスペクタの一番下のところにある Add Component をクリックし、出てくる小さい画面で Post-process Layer を探して選択します。 Post とかで検索するとすぐ出てきます。
追加された Post-process Layer で Layer の設定を先程用意した PostProcessing のレイヤーにしておきます。
最後に、VRC Scene Descripter を設定していたオブジェクトを選び、Inspector から Reference Camera を MainCamera にします。
もう少しです。
ヒエラルキー上のなにもないところをクリックして、Create Empty を選択してゲームオブジェクトを作成します。名前は、Post Processing Volume とでもつけておきましょう。
作成したゲームオブジェクトのインスペクタで、Post-process Volume コンポーネントを追加します。
最後です。インスペクタ上部の Layer を PostProcessing レイヤーに設定し、Profile の設定画面の右側にある New ボタンを押します。 Is Global のチェックボックスは、画面全体にエフェクトをかけたい場合はON、一部だけかけたい場合はOFFにします。
これまでが準備です。ここから元資料のほうで書かれているようなブルーム効果を乗せていきます。本当にもうすこしです。
一番下にある Add effect から、Unity → Bloom を選択し、ブルーム効果を追加します。
Bloomの効果は詳しく解説しませんが、元資料では Intensity を 1 に設定しているので、とりあえずその通りにします。
マテリアルのHDR設定(PDF 36ページ目, ページ番号 29)
マテリアルの HDR 設定は Unity 2019 では色設定画面の中にあります。Intensity と書かれているものがそれです。
上記のブルームの設定によって加わる光り方に応じてIntensityを上げてみましょう。私はとりあえず 2 にしました。
床・壁・天井と光るキューブを Static にして、Generate Lighting をかけると、下のようにぼんやり光る感じになります。
★以降、勉強を進めたら追記していきます。