Blenderでワールドを作ってVRChatへアップロードしてみようという記事の5回目です。
この記事ではBlenderで作ったモデルをUnityでセッティングしていきます。
具体的には鏡、動画プレーヤーの設置と、イスに座れるように設定をしてアップロードまでやります。
基本的なモデリング、マテリアル付けなどできる方向けに、Blenderで簡単なお部屋を作ってVRChatへアップロードする手順をまとめているので、1回目から見たいよと言う方は以下の記事から読んでみてください。
今回は右図のような、小さい小部屋を作っています。VRChatでホームに設定して、自分の部屋として使うこともできます。
作るもの
- 建物(部屋+廊下)
- ソファ(クッションつき)
- 机・イス
- ローチェスト
- 観葉植物の飾り
- きのこのランプ
- ぬいぐるみ
動画プレーヤー(Unityでつけます)やイスに座れる設定、ポストプロセシングで光を柔らかく表示するような設定もつけます。

鏡を設置する
一応、自室として使うという想定なので、自分のアバターのチェックとかできるように、廊下に鏡を設置していきます。
好きな場所においてもらってかまいません。
- Projectの中の
Favorites > All Prefabsの中に
VRC Mirrorというアイテムがあるので、これをヒエラルキーにドラッグ&ドロップします。 - ワールドのどこかに鏡が現れるはずなので、それを好きな場所に持って行って配置します。(壁に設置する場合、面にぴったりくっつけると表示がおかしくなるので、ほんの少し面から離してください。)
- ※裏表があります。景色が映る方を表にしてください。
- VRC Mirrorオブジェクトを選択して、
Inspector > VRC Mirror Reflection
の中の、VRWorld Toolkit Additionsの項目で、以下を選んでください- Show Only Players…プレイヤーしか鏡に映らない(背景なし。軽い)
- Show Players/World…背景もプレイヤーも映す(ちょっと負荷がかかるけど、このくらいの小さいワールドなら多分大丈夫。)

これで鏡を設置できました。
イスに座れるようにしていく
今ソファオブジェクトやイスがありますが、特に何の設定もしていないので、このままではキャラクターがすりぬけるだけになっています。
VRChatが用意しているデフォルトのイスのギミックを利用して、ソファやイスに座れるようしていきます。
- Project > Favorites > All Prefabsの中にあるVRCChair3をヒエラルキーにドラッグ&ドロップして追加します。
- これはVRChat公式が用意している座る機能がついたイスなので、これを利用します。
- 自分が作ったイスの座る部分に重なるようにVRCChair3を移動します。
- 背もたれ側が背中になるので、方向も確認してください。
- メッシュ(デフォルトのイス)を隠す
- VRCChair3 の子オブジェクトのVRC_chair_udonの
Mesh Rendererのチェックを外すとメッシュが非表示になります。
- VRCChair3 の子オブジェクトのVRC_chair_udonの
- Collider:コライダー(衝突判定ボックス)を編集します。
- VRCChair3のInspectorのBox ColliderのEdit Collider右のアイコンをクリックすると編集モードに入ります。
- 青いボックスが出るので、各面の青いドットを動かして大きさを変えます。座席の部分を覆うように調節します。(隣の座席のコライダーと重ならないように)
- VRCChair3を複製(Duplicate)して座席分作ります。背もたれ側がどの方向だったか意識して、座席の方向に合わせてください。

ソファの座席3つ+イス1つで4つ分作っています。
若干ソファのイスの角度が違うのは、正面に動画プレーヤーを置く予定なので、なるべく前を向くようにしようと思ったからですが、好きなように配置してもらってかまいません。
座るシートの位置などの調整は右記事で解説しています。ですが、初心者のうちはそんなに気にしなくていいので、ワールドをアップロードして、どうしても気になったら調整してみましょう。
動画プレーヤーを置く
動画プレーヤーを設置して、自室で動画を見ることができるようにします。
USharp Videoという動画プレーヤーを使います。
USharpVideoをUnityに導入する
MerlinVR 氏のGithubページでダウンロードできます。
- 上記のページへ行き、Bug fixesLatestと書いてあるリンクへ移動します。
- 下の方のAssetsの中のUsharpVideoと書いてあるUnitypackageを押してダウンロードします。(少し時間がかかります)
- ダウンロードできたらそのパッケージを、UnityのAssetsフォルダの中にドラッグ&ドロップしてインポートします。
- どのファイルをインポートするかのウィンドウが開くので、下のimportボタンを押してインポートします。
これでUsharpVideoがインポートできました。

USharpVideo を配置する
あとはUSharpVideoファイルの中にいき、中のUSharpVideoPrefab(青いアイコンがついてるやつ)をシーンか、ヒエラルキーにドラッグ&ドロップすると動画プレーヤーが出てきます。
ソファの正面のローチェストの上においてください。
※裏表あるので、パネルの文字が反転してないか確認してください。
スクリーン、コントロールパネルのサイズを変更する
USharpVideoオブジェクトの中を開いて、VideoScreenをScaleするとスクリーンのサイズを変えられます。部屋からはみ出ないように調整してみてください。
※スクリーンの比率を変えると映像が引き延ばされるので、Scaleするときはリンクさせて(TransformのScale項目の右にあるチェーンのアイコンをクリックする)、同じ比率で拡大縮小してください。
同様にControlsUIオブジェクトを選択してスケールして、パネルもちょうどいい大きさにスケールしておいてください。

ポストプロセシング(Post Processing)をかける
光をいい感じにやわらかく発光させるために、ポストプロセシングという効果をかけていきます。
ポストプロセスボリュームを追加
- 空のオブジェクトを作成
- ヒエラルキー上で
右クリック > Create Empty
でオブジェクトを作って
分かりやすいように名前を変えておきます。
(例:Post Processing Volume)
- ヒエラルキー上で
- ポストプロセスボリューム設定
- 追加したオブジェクトのInspectorの
Add Componentから
Post-process Volumeを追加します。 - Is Globalにチェック
- ProfileでNewを押し、新規プロファイルを作成
- 追加したオブジェクトのInspectorの
- レイヤー変更
- Inspector上部のLayerメニューを開き、下のAdd Layer…をクリック
- Layer編集画面になるので、
user Layer22を「Post Processing」に変更します。
(レイヤー0~21は使わないでください) - LayerをPost Processingに変更します。(またオブジェクトを選択し直すと普通のInspectorの画面に戻ります。)

Post Process Layerをカメラに設定
- Post Process Layerをカメラに設定
- メインカメラ(Main Camera)を選択
- InspectorのAdd Component で Post Process Layerを追加
- LayerをPostProcessingに設定し、カメラがこのレイヤーを参照するようにする
- エフェクトの追加
- PostProcessVolumeをつけたオブジェクトを選択
- Add Effectを押すとUnityのメニューの中からエフェクトを選択できる
ここでBloomを選択してください。

Bloomの設定
ポストプロセシングのエフェクトは各パラメータにチェックを入れないと有効になりません。以下のパラメータにチェックを入れ、数値を調整してみてください。
- Intensity…1.5(効果の強さ)
- Threshold…1(効果をかける光の強さの閾値)
- Soft Knee…0.5(光のにじみ)
- Diffusion…7(光の拡散・ぼかし)
あまり強くすると、光が飽和してしまったり、VRで見たときにまぶしかったりします…。好みですが。

テストプレイしてみる
ほぼ出来上がりになりますので、保存をしてください。
VRChatにアップロードする前にテストしてみます。
Unityには、VRChatに上げる前に、実際この建物の中に入ってどういう風に見えるかテストプレイする機能があります。
- ヒエラルキーのVRCWorldを選択します。
- これはアバターが最初に立つ場所になります。
- 青い線の向いている方向がアバターの正面方向になります
- ドア付近に置いてください。
- 画面上の再生ボタンを押すとシミュレーションモードがスタートします。
- 「このシミュレーションモードと、実際にワールドをアップロードしたときの挙動には違いがあるから、本格的にテストをしたいならBuild & Testをしてね」と言われるのでAcceptをクリックします。
- ロボっぽいアバターになってワールドを歩きまわれます。
- wキー…前進
- Aキー…左を向く
- Dキー…右を向く
- Sキー…後退
- Escキー…メニューが開いて画面外を選択できるようになる
- イスに座ったり、動画プレーヤーにURLを入れてみて動画を再生してみてください。
- シミュレーションモードの終了
- Escキーを押してメニューを出し、
- Close Menu…メニューを閉じる
- Exit Playmode…シミュレーションモードを終了する

問題なければ、VRChatへアップロードしてみます。
VRChatへワールドをアップロードする
いろいろ設定があって大変だったかと思いますが、やっとVRChatにアップロードできます。もう少しです。
VRChatへワールドをアップロードするには、VRChat SDKで設定していく必要があります。
VRChat SDK(Software Development Kit) は、Unityで作ったワールドやアバターをVRChatにアップロード・制御するための公式ツールセットです。
VRChat SDKのパネルが出てない場合は、
上部メニュー > VRChat SDK > Show Control Panel
でパネルを出してください
- VRChat SDK > Authenticationで、
- Username/Emal
- Password
- を入力してSign Inします。
- メール認証
- すると、メールに6桁くらいの番号が送られてきます。認証画面でそれを入力すると、自動で先に進みます。(進まなかったらVerifyを押してください。)

ワールドの設定
メール認証が終わると、右図みたいな設定画面が出ると思います。
まず1.Prepare Your Contentの項目から設定していきます。
- Name…ワールドの名前です。日本語でも英語でもOK
- Max. Capacity…ワールドに入れるマックスの人数です。今回は狭いワールドなので10人くらいにしときました。(よくわからんって方は、デフォルトのままでもOKです)
- Rec. Capacity…ワールドに入れるオススメの人数です。これを超えると通常の検索画面でそのインスタンスは出てこなくなるけど、他の方法では入れます。公開してないワールドではあまり関係ありません。とりあえず5人くらいにしときました。
- Content Warnings Tags
- 今回公開しないので、どちらも設定しません。
- 警告は、本来ならアダルトだとか、グロいとか、ファミリー向けではないワールドにチェックする項目があります。
- Description…ワールドの説明です。
- 画像…ワールドのサムネ画像になります。
- Capture in Sceneをクリックすると、右図下のような画面になります。
- シーンの角度や場所を変更すると、映る画像が変わるので、いいアングルを探して、Captureを押すと画像がキャプチャされます。

問題を修正する
2.Review Any Alerts では、VRChat SDKが修正した方がいい箇所を警告してくれます。
ほぼ、VRChat SDKの言う通りに問題を修正していきます。
(誰でもなんらかの警告って出るので、警告が出るからといってあなたのやり方が悪いというわけではないと思います。気にせず、淡々と問題を修正していけば大丈夫です。)
※全ての人が同じ警告が出てるわけではないと思います。自分の場合を書いておきますので、大体こんな感じで直せばOKと思ってやってみてください
- まず、Layersという画面で、
「プロジェクトのレイヤーをVRChat標準に合わせる」と言ってくるので、
Setup Layers for VRChatを押します。- すると、画面に、「もしレイヤーをカスタムしてたら、また設定しないといけないかも」とか言ってくるので、Do it!(いいよ、やれよ)を押します。
- 次はCollision Matrixで
「ワールドやオブジェクトが正しく物理や同期するために、標準レイヤーのCollision Matrixとレイヤーを合わせたい」みたいに言ってくるのでSetup Collision Matrixを押します。- すると、画面に「セットアップ続けていいか?」って聞いてくるのでDo it!を押します。
- 次は、細かい修正項目が出てくるので、読める人は頑張って読んでみてもいいですが、大体Auto Fixを押せば直してくれます。

細かい修正項目とかはアドバイスとか改善点なども書いてあったりするので、余裕が出来たら読んでみると良いです。
とりあえず、Auto Fixのボタンが出てこなくなったり、新しい修正項目が出てこなくなればOKです。
※赤いアイコンで警告が出てると、何か修正必須な問題が出ているかもしれません。
ワールドをアップロードする
その下の 3. Build でワールドをアップロードします。
- Build Type…Build & Publish Your World Online
- VRChatにワールドをアップロードします。最初はプライベートなので、みんなに検索で来てもらうことはできません。
自分だけがワールドに入れます。(招くことはできます。)
- VRChatにワールドをアップロードします。最初はプライベートなので、みんなに検索で来てもらうことはできません。
- Platform…Windows(PC版VRChat対応、VRのみでログインには非対応です。)
- Build & publish を押すとアップロードを開始します。
- Copyright ownership agreement…著作権や、なにか権利を侵害したものを使っていないか聞いています。
- 例えば、他人のイラスト、3Dモデルなどは、利用規約を確認し、使用しても良いか確認してください。
- 私が、このチュートリアルで配布したテクスチャなどは使っても大丈夫です。
- 使用しても大丈夫なアセットだけを使っていると確認できたらOKを押します。
- 少し時間がかかりますが、Upload Succeeded!と表示されたら、アップロードが成功したということです。
- VRChatを開き、確認してみます。
- Unityは保存などして、閉じても大丈夫です。

VRChatで確認する
VRChatにログインするときはVRChat/Steam/Discordのどの方法でログインするか聞かれるのでVRChatでログインしてください。
- ワールドのメニューを開き、
自分のワールド > アップロードしたもの
の中にアップロードされたワールドが表示されています。
無事中に入れて、動画やイスなどが機能していることを確認しました。
動画プレーヤーは、今まではYouTubeなどが見れていたのですが、外部サービスの仕様変更などの影響で見れなくなることがあります。
将来的に再び見れるようになる可能性もありますが、それまでは他のサービスを使ったり、動画をどこかにアップロードしてURLを読み込む方法や、オープンソースの動画などを見て楽しんでみましょう。
以下はBlenderが制作した公開アニメ作品「ビッグ・バック・バニー」です。動画テストなどでもよく使われていて、かわいく楽しめる作品なので、まずは以下のURLを入力してテストしてみてください。
※動画などをネットで公開・紹介する場合は、ライセンスや利用規約を確認し、公開が許可されている素材かどうか確認しましょう。
Youtubeで使えるかテストする場合は、以下の私の動画のURLを使ってテストしてみても構いません。
https://www.youtube.com/watch?v=fcug2gA2Uhs&t=64s

みなさんはうまくアップロードできましたでしょうか?
うまくいかなかったら、またUnityを開き、修正したり光や色などを調整して、再度VRChat SDKでBuild & publish を押してください。それだけでまた上書きできます。やり直しは何度でもできます。
記事を読み直して何かやり忘れた作業や、読み逃してた箇所がないか探してみてください。それでも解決できない場合はコメントなどに書きこんでもらえば、わかるところなら回答したいと思います。
このチュートリアルで基本的な流れがつかめたら、ぜひ皆さん自身のアイデアを活かしたワールド制作に挑戦してみてください!
今までの記事
第①回目 Blenderでモデリングをしています。
第②回目 Blenderでマテリアルやテクスチャをつけていきます。
第③回目 Unityでマテリアルなどの設定をします。
第④回目 Unityでライティング・ライトベイクをしています。
関連記事
アバター制作チュートリアル記事です。
動物型。シンプルアバター制作チュートリアル(アバター制作初心者向け)
人型アバター制作チュートリアル(アバター制作中級者向け)









コメント