Luminous Hotel 制作記
はじめに
こんにちは、ワールドクリエイターのLuraです。
![](https://assets.st-note.com/img/1724640013109-2bfpBLGGtS.png?width=1200)
Luminous Hotel、大変好評いただいていております!
リリースから2週間で20万人もの方にVisitしていただきました…!
よく考えると延べ20万人……!?すごい…!!
Luminous Hotel、Visit 20万人ありがとうございます!
— るら/VRC (@Lu_Ra_999) August 20, 2024
販売版もフルパッケージを100人以上の方にご購入いただいており大変感謝です…!こだわって製作した甲斐がありました!
今後も製作を続けていきますのでよろしくお願いいたします…! pic.twitter.com/8X2leVYCbm
アセット販売の中では12000円という決して安くない、むしろかなり高い部類のフルパッケージに関しても、たくさんの方にご購入いただいており大変感謝しております…!
しかしおそらく、外から見ていると「流石にちょっと高くない?」というように思うこともあるでしょう。
![](https://assets.st-note.com/img/1724307656596-ctU7GzDNYA.png?width=1200)
ワールドクリエイターの方はともかく、自分で知らない範囲のものに関しては、制作にどんな作業工程があるか、というのはなかなか想像しにくいものです。
長文になりますが、このワールドにどれだけの工数と執念がつぎ込まれていたのか紹介させてください。
グレーボックス
さて、私のワールドはグレーボックスから始まります。CGWORLDでも取り上げてもらいましたが、gravitySketchですね。
VR空間に閉じこもりあーでもないこーでもないとワールドの輪郭を作っていきます。
スランプ
ちょっとこの時期は作りかけのものに先が見えなくて、2つ連続で没にするというスランプに陥っていました。
Echoを作ったあとだったということもあって、ワールドの広さが無駄に拡大路線に進んでいたのも良くなかったです。
パビリオン
![](https://assets.st-note.com/img/1724640669040-LBqeHbd1LB.png?width=1200)
![](https://assets.st-note.com/img/1724640770787-MY783D10Pf.png?width=1200)
Spiral Building
![](https://assets.st-note.com/img/1724641241522-kpqCUHWjyJ.png?width=1200)
![](https://assets.st-note.com/img/1724641003726-VDibhbt8Bz.png?width=1200)
ほんとはこの施設を作る上でクオリティラインを探るためのバーティカルスライスとして作っていたのですが、工数が爆発することがわかったので、小さくて密度が高くて居心地の良いワールドを作るか…!となったのが現在の701号室です。
スクショの日付を見ると2023年の9月ですね…
途中、日産自動車の案件などが挟まっていて製作できない時期などはありましたが、だいぶ長い時間をかけて作っていますね。
これがグレー段階から少し進んだ状態のワールドです。
この段階で仮プロップとかを配置して雰囲気を見ておく作業は必要ですね。
![](https://assets.st-note.com/img/1724641015210-ZycKW5RmsH.png?width=1200)
![](https://assets.st-note.com/img/1724641028543-dr1DAc44bR.png?width=1200)
![](https://assets.st-note.com/img/1724640866398-XRQM89Eln1.png?width=1200)
![](https://assets.st-note.com/img/1724641704011-R0dkXYQrvi.png?width=1200)
一発で良いものを決め打ちできればよいのですが、泥臭く繰り返し繰り返しで良いものを探索していっています。
ワールド全般
先にワールド全般のことを語っておきます!
体験
最終的にLuminous Hotel は私の考えた理想のホテルワールドになりました。
やっぱり、良いホテルってたくさん泊まりたいですよね!
もともとホテルを作りたかったのはVirtualFurenceのホテルのワールドがめっちゃ好きだったというのがあります。
私なりにホテルのワールドを再解釈して、
私が使いたい理想のホテルのワールドになったのが、今の Luminous Hotelです。
環境、音、モデル、プロップ、ギミック、体験、あとアンチエイリアスがちゃんとしてるとか、そういうすべてのこだわりを満たしてすべての好みに合致するワールドは自分で作るのが一番です。
高級ホテルと言われることもあるのですが、実際そこまで高級ではないものがモチーフですね。
もっと高いところだとたぶん、品格みたいなのが違うはずです。自販機とかそもそもないし、あるとしてももっと統一されたラッピングのデザインとかになってそう。
なのでだいたい1泊5万~10万ぐらいのホテルというイメージですかね。
それ以上高いホテルとかに行くと私は気圧されちゃいそう…
でもクリエイターとしてすごい高級なホテルにも取材に行ってみたい…!!
名前
毎回そうなんですが、ワールドの名前はかなり悩みます。
特にホテルの名称は悩みました。
大した意味はないのですが、Meroomとかみたいに【Lu】【Ra】を入れてみたかったんですよね。LuRoomみたいな。
光が印象的な感じなので、L、L……Luminous!
「Luminous Ragoon」とか良いのでは??
とか思ってたけどよく考えると「Lagoon」だった…
しかしやはりホテルであることをすぐに分かるようにしたかったので、
「Luminous Hotel 」という名称に落ち着きました。
プロップを先に
このワールドはちょっと変則的に、ワールドよりも先にプロップを作り始めていました。
ワールドが2連続で没になっていたこともあり、良いプロップを作っておけば最悪別のものに使い回すこともできて良いかな、という判断ですね。
全体感を掴まずにプロップを先に作るのはあまり良いワークフローとはいえないのですが、一度プロップのクオリティをめちゃめちゃあげておくとそこをクオリティラインとしてワールドが見えてくることもあるので、気分転換には良い方法だったかもしれません。
![](https://assets.st-note.com/img/1724641152121-qQuCYIJI7p.png?width=1200)
![](https://assets.st-note.com/img/1724641160969-PFVvU0WMm9.png?width=1200)
Luminous Hotelのパッケージに同梱されているプロップもそれぞれ頑張って制作しているので、ここからはその制作についての紹介もさせてください!
電子レンジ
![](https://assets.st-note.com/img/1724642502054-RsVG1meZgw.png?width=1200)
デザイン/モデリング
シンプルなデザインの電子レンジです。
ハードサーフェス、楽しいけど難しいですね。
私はメカ的な構造にそこまで詳しいわけではないので、「んん…??どこを軸に扉が回転するんだ…??」みたいなことに頭を悩ませながらヒンジの構造を考えてガチャガチャしながら作ってました。
何も考えないと一番外側に蝶番つけちゃいがちですけど、違うんですよね。回転軸をちゃんと考えてあげると説得力が出ますね。
ライトマップ
電子レンジは扉を開けるときや回転中にオレンジの光が点灯します。
![](https://assets.st-note.com/img/1724653666181-ipduvanMLh.png?width=1200)
![](https://assets.st-note.com/img/1724642817381-Nw4Mk3z35H.png?width=1200)
この手の光り物?のオブジェクトを作る際はコツがあります。実際に光っているライティングをBlenderで事前にベイクするのです。
この調整はなかなか面倒で大変なのですが、エミッションマップとしてベイクしたデータを持っておくとギミック用にアニメーションできるので演出の幅がだいぶ広がります。
扉ギミック
![](https://assets.st-note.com/img/1724642953773-dyxxYjE1R1.png?width=1200)
扉の開閉ギミックはこだわりました。気持ち良い手触りにしたかったのでここにも工夫があります。
ハンドルをピックアップした際に音が鳴る
引っ張って一定以上の距離になるまで扉のRigidbodyをロック、閾値を超えたところで音とともに解放
扉が空いている間はアニメーションが設定できるようになっており、電子レンジの場合は先述のエミッションマップが優しく点灯
ハンドルが一定範囲内に収まると閉じる音とともにRigidbodyをロック。ハンドルを強制ドロップさせることでバタバタしないように
引っ張ったときに一定の距離までは動かないのがレンジの扉の抵抗のそれっぽさを出しますね。
気持ち良いでしょー!
これは結構自慢ポイントなのです!
回転ギミック
それだけじゃないです!
電子レンジなので、あたためるギミックも欲しかったので頑張りました!
作り置きしていた手触りの良い電子レンジギミック。
— るら/VRC (@Lu_Ra_999) February 5, 2024
ドアにいい感じの抵抗があってガチャガチャするのが気持ちいいやつ。そしてちゃんと回ってあたためると湯気が出る!
VRCPickupのついているオブジェクトなら「なんでも」温められる汎用性がお気に入り。 pic.twitter.com/YyaQ37RVp9
電子レンジギミックで何をしてるかというと、庫内に入れたオブジェクトをすべて配列に入れて、ターンテーブルの子にすべて移動。ピックアップをオフに。
— るら/VRC (@Lu_Ra_999) August 22, 2024
ターンテーブルごと30秒回転させてからオブジェクトを元に戻し、湯気パーティクルをコライダーのバウンディングのサイズに合わせて生成してる。 https://t.co/BBKnE4KvRX
いやぁ…同期まわりで苦労しました本当に。
多分ギミック製作してる人はみんなやってることだとは思うのですが、デバッグのために平行世界で分身してたくさんのるらさんがひたすらレンジを検分してるという異常な光景がありました。
![](https://assets.st-note.com/img/1724643001588-DlYQVZhsVF.png?width=1200)
LateJoinerという存在がこの世になければもっと楽だったのに……みたいなことを考えながらこだわりと苦しみの果てに完成した電子レンジです。
ぜひお手にとってみてください!
冷蔵庫
![](https://assets.st-note.com/img/1724643590536-4Dap3Bev11.png?width=1200)
モデリング/テクスチャ
ちゃんとした冷蔵庫が欲しかったので頑張りました。ちゃんと中まで作り込んであります。
この手の大型家具はテクスチャの扱いが難しいです。タイリングすると情報量が少なく、ユニークテクスチャだと解像度が低くなる。
VRだと要求される解像度はかなり高めです。だって冷蔵庫の中に入りたいじゃないですか?
トリムシートとかシェーダーとか、いろいろ考えられる手はありますが、今回はシンプルに解決しました。
マテリアルとテクスチャを増やしています。
えっ、SetPassCallとか増えるし重くなるしいいの!?って思うかもしれませんが、いいんです…!
必要な表現なんです。たかだか数マテリアルを節約したところで誤差です。(激重アバターが1人いるだけで全ての努力は消えるのです…)
Staticのオブジェクトで部屋の中でそこそこの体積を占めるプロップのクオリティをあげるためにささやかにマテリアルをちょっと増やすことは許されてもいいはずです。
冷蔵庫の中に入ってもテクスチャがガビガビしていない、これは重要なことです。
もちろん、Albedoだけ解像度を高くし、MOSやNormalなど影響度が低いテクスチャは解像度を下げる、など工夫はしてあげるのは前提です。
エミッション
エミッションマップもベイクしてあります。冷蔵室と冷凍室で別々のエミッションマップを焼いてあり、それぞれ別のアニメーションが可能になっています。
冷蔵庫感のある光を再現するのになかなか苦労しました。
煙
![](https://assets.st-note.com/img/1724643992863-t9V0U6UeHQ.png?width=1200)
扉を開けると冷気のパーティクルが出ます…!
温度を感じられないVRでは煙表現は温度の再現に便利ですね。
余談ですが、私はこの冷蔵庫が開けっ放しになってるのを見かけるとどうしても扉をしめてしまいます。なんか本能が閉めなきゃってなるんですよね。
洗濯機
![](https://assets.st-note.com/img/1724642535554-0gUZ9IXnzA.png?width=1200)
モデリング
これもなかなかそれっぽい感じにできたかと思います!
この手のテクスチャを作成するときはSubstancePainterで曲率マップなどをベイクするのですが、法線をしっかり綺麗にしておかないと曲率がうまく焼けずに苦労します。
しかし、曲率マップがあるとないとでは見栄えやエッジの情報量が全然違ってくるので、綺麗に焼いて表現したいところですね。
ギミック
洗濯機には本当は音を立てて動くギミックがありました。リアルの洗濯機の音を収録して加工したり、けのもさんにサウンドをお願いしたりなどしていたのですが、見た目部分のエフェクトなどが満足できなかったのでいったんオミットしてあります。
スクリプト部分はできてるのでこれもそのうちアップデートしたいところです。
掃除機
![](https://assets.st-note.com/img/1724643877453-QN9ofj9waY.png?width=1200)
オリジナルデザインの掃除機です。
ハードサーフェスをするならということで、SFっぽいプロップを作りたかったのですが、私のワールドだとSFプロップは場違いなので掃除機になってもらいました。
デザイン差分はカラーリングが映えるようにしてあります。
消火器
![](https://assets.st-note.com/img/1724644018047-RS1t16QdBX.png?width=1200)
こういうのも作っておくといいですよね。
ひとつひとつテクスチャもIllustratorで用意してます。
こういう小ネタを仕込む作業は結構楽しいです。
余談ですが、説明の絵も自分で用意したので勘違いが反映されているのですが、3つ目の絵の解説のところで、消火器って下のレバーを引くんじゃないんですね。上のレバーを引くらしいです。
恥ずかしい勘違い…
IH/オーブン
![](https://assets.st-note.com/img/1724653791205-GCM5a52edd.png?width=1200)
オーブンも例によってエミッションマップをベイクしてあります!
扉もカチャカチャできる。
触れるギミックが多いとやっぱり楽しいですよね!
ムードボード
![](https://assets.st-note.com/img/1724644242720-s5CgaEXeMe.png?width=1200)
Luminous Hotel のメインギミック、ムードボードです。
こういうのあったらいいよねぇ…と作り始めたわりには本当に大変でした…!!
バグが…!!同期が…!!!!LateJoinerが…!!!!!!ムードボードの開発が全体工数の1/3を締めているといっても過言ではないです。
やってることは「部屋のムードを表示する」というシンプルなものです。
普通ならボタンにしてしまっても良いのですが、私はVR内での物質性というのが好きなので、ホテルなどにあるサインプレート(Don't Disturbの札みたいなやつ)を使うことにしました。
本来は、部屋の外のドアノブにかけるものではあるのですが、利便性が悪いので部屋の中で使うアイテムになりました。
アニメーション
プレートを壁にかけると、ぴたっと止まるのではなく、吊り下げた際のアニメーションが再生されるようにしました。
私はアニメーターではないということもあり、キーフレームでやるとこの吊り下げたアニメーションが全然うまくいかなかったので、単振動のスクリプトを再生してUnityRecorderでアニメーションをベイクしました。
UnityRecorder、動画を撮るためのものだと思ってましたがスクリプトで動いているオブジェクトのアニメーションをキーフレームにベイクとかもできたんですね。便利です。
BGM再生機能
これも苦労しました…
前も動画プレーヤーは作っているのですが、同期が関わってくると本当にとても面倒なものになります。
しかし頑張ったおかげでなかなか便利なものになりました。ムードごとにオーディオクリップと、動画URLを複数設定できるので気分に応じたBGMが使えるようになりました。
プレートを外した際にちゃんと音がフェードアウトするような機能も、当然の機能のようですがちゃんと入れてあります。
![](https://assets.st-note.com/img/1724644515147-Svsh43503u.png?width=1200)
余談ですが、私は長時間滞在するワールドのBGMはなるべくループ感を感じないようにするため、単一の曲ではなく、複数曲をループするようにしています。
同じ曲や短いフレーズがずっとループしているようなワールドはだんだんと気になってしまいますが、複数曲ある場合はその違和感はほぼなくなるので、お使いの方は複数設定しておくのがおすすめです。
リバーブフィルター
![](https://assets.st-note.com/img/1724655085921-e68MIz6uog.png?width=1200)
触った人はわかるかもしれませんが、Sleepの時には音や声にリバーブフィルターがかかります。
好みはあると思うので個別に外せるようにしてありますが、私は結構好きな演出です。
寝る前におしゃべりするとき、声が幻想的にひびくのは水の底や、夢の中を思い起こさせてなかなか良いものです。
サイレントモード
![](https://assets.st-note.com/img/1724645049930-i2gKNooZwQ.png?width=1200)
サイレント、サイレントスリープの札も実装しました。この札をかけている間は声が聞こえなくなります。
この札は、SilentClubのギミックから着想を得ています。
言葉を使わないアバターでのコミュニケーションというのはたまには良いものです。
無言勢の方にはよく使っていただいているみたいですね。
あと単純にたくさん来客があるなかで寝る際などに声で起こされる心配が無いというのも便利です。
また、この機能を入れるにあたって、アナウンスを用意しました。これが無いとサイレントモードになっているかどうか分からないので、有効になった際に流れるようにしてあります。ちゃんと部屋の入退室時にも再生が切り替わるようにしてます。この機能のバグの修正、原因がわからず数日かかりました…
アナウンスのボイスはかにおさん(@kanio_VRC)に依頼させていただきました!
最初は私の声をめっちゃ加工して使うとかずんだもん使うとかいろいろ考えたのですが、その道の人に頼むのが1番でしたね!
改めてありがとうございます!
Movie Mood
![](https://assets.st-note.com/img/1724645087794-9jDpj32ant.png?width=1200)
動画プレーヤーが出てくるムードです。(ムードとは…)
これは体験の話なのですが、ワールドにおける動画というコンテンツはとても支配的です。
たいてい面白く、音が鳴るためみんなそれを見ることになります。
私は動画を見るのも好きではあるのですが、話をするのも好きです。
しかし、動画プレーヤーを普通に置いた場合、ワールドにいる誰か一人が動画を再生してしまうと話をする時間は動画に食われて終了してしまいます。
こういったこともあり、「動画を見るムード」「お話をするムード」「おやすみのムード」というのを明示したかったのです。
余談ですが、プレリリース時に要望があったため、Movieのムードになっているときだけ、ガラスのフレームが消えて見やすくなるようにしてあります。
![](https://assets.st-note.com/img/1724645144753-ZSl9xELCC5.png?width=1200)
![](https://assets.st-note.com/img/1724645140878-qahX0XzEvT.png?width=1200)
ルームオーナー
ルームオーナーというシステムを制作しました。
販売版のワールドでは自分の名前やフレンドの名前を入力しておくことで入室や、部屋の機能を使う事ができるようになります。
グループの何人かで部屋を使い分けるという利用法も面白いです。
![](https://assets.st-note.com/img/1724655255625-wkKB7hjmY5.png?width=1200)
キーボックス
ルームオーナーでない方は見たことがない演出だと思いますが、ルームオーナーだとキーボックスから鍵が出てきます
![](https://assets.st-note.com/img/1724645608432-27Aj3A7wOc.png?width=1200)
キーボックスが動く音は自分で録音しました。
![](https://assets.st-note.com/img/1724655301867-cspqTRRAdi.png?width=1200)
部屋の中の金属っぽいものを片っ端から殴っていき、洗濯物の棒をこすり合わせるといい感じの音がでたので、これで作りました。
エレベーター
![](https://assets.st-note.com/img/1724645347854-wgx511NC5J.png?width=1200)
エレベーターはジョイン、リスポーンに反応して扉が開く仕組みになっています。一定距離離れると扉が閉まります。
2基あるうちのエレベーターのどちらかにスポーンするので、複数人が同時に入ったときなど同じ場所に重なりにくいです。(ちょっとだけ)
「これもよく考えると1基でも良かったんじゃない??2つにすることでギミックが複雑になって工数かなり増えたよ????」と私の中のプロデューサーが語り掛けてきますが、私の中のディレクターが「2つがいいんだ!!!」で押し切りました。
植物
![](https://assets.st-note.com/img/1724655025950-Pt98pJhfgd.png?width=1200)
![](https://assets.st-note.com/img/1724645783587-VphtDHKtep.png?width=1200)
植物も作っています。ツタなどはジオメトリノードで作っていますが、観葉植物類は結局普通に作りました。
![](https://assets.st-note.com/img/1724645799889-y3DKF3slBq.png?width=1200)
一時期モデリング資料用に、良くできた偽物であるフェイクグリーンから学ぶことが多そうということに気づいたので、いろいろ買い漁っていました。
IKEAで参考資料を買ってきたり、勉強になりますね。
![](https://assets.st-note.com/img/1724646173463-RRik4KhARV.png?width=1200)
しかしこの無駄にでかいモンテスラの葉、1枚しかないしどうしたものか……
流木アート
![](https://assets.st-note.com/img/1724646229638-qdPWzoVEUo.png?width=1200)
流木が欲しかったのですが、これはスカルプトで作っています。
フォトグラメトリとかで撮影するのありかなと思っていたのですが、そのためには流木を探したり買ってくる必要があって流石にそれは邪魔でしょ…ってなったのでやめて、自分で作ることにしました。
生け花とか盆栽のセンスが必要になってきますね。
そっちを勉強してみるのもありかもしれない。
照明プロップ
照明器具もたくさん作りました!!
大型の照明よりも小型でベッドの上とかに雑に置いても良さそうな照明の方が便利なので、いい感じのデザインを模索してました。
なんだかんだで一番使うプロップだからもっとバリエーションを作っておきたいところですね。
![](https://assets.st-note.com/img/1724655609671-fHYtET1Vhb.png?width=1200)
![](https://assets.st-note.com/img/1724655624674-AKvqr6bldG.png?width=1200)
![](https://assets.st-note.com/img/1724655711446-9iNZaJWFhP.png?width=1200)
![](https://assets.st-note.com/img/1724655661029-VDCvCRxEdi.png?width=1200)
![](https://assets.st-note.com/img/1724655730341-dTeoYYEoVz.png?width=1200)
![](https://assets.st-note.com/img/1724655672786-lGTKeK6DvW.png?width=1200)
![](https://assets.st-note.com/img/1724655745034-QQE8phgT7H.png?width=1200)
Floating Airship Float
![](https://assets.st-note.com/img/1724550169152-yhAE4m95rH.png?width=1200)
![](https://assets.st-note.com/img/1724655769507-adtuKrXRjQ.png?width=1200)
FloatingAirshipのエアフロートです。
宿泊者がFloatingAirshipの機内販売とかで買ってきたお土産、というような設定です。
世界観がちょっと地続きです。
実物をグッズとして欲しいけど特注になって高そうだなぁ…
FakeInner Light Shader
今回大活躍したUniuniさんのシェーダーです。
Luminous Hotelのためにいろいろと調整をしてパッケージをリリースしてくれたので、超感謝。
表面が光るのとは違ってちゃんと「中」が光ってくれるの素晴らしい https://t.co/wJQTJgJ8oj pic.twitter.com/vxn3qGqfVr
— るら/VRC (@Lu_Ra_999) November 3, 2023
自動販売機
![](https://assets.st-note.com/img/1724646387859-5C1E6t4uBa.png?width=1200)
この自動販売機はとてもこだわりました。VRCで最強の自動販売機を作るぞ…!という意気込みで作っていたのでかなりの作りこみになってます。
ライトマップ
![](https://assets.st-note.com/img/1724646445861-NGXMX9PdNl.png?width=1200)
自動販売機も電子レンジや冷蔵庫のプロップと同様に、ライトマップ(エミッションマップ)をBlenderで個別にベイクしてあります。
そのため、ライトベイクをし直さないPrefabポン置きでも十分なルックが出るようになっています。
また、ディスプレイ用のペットボトルなどに関しても、後ろから光を当てた状態を再現するためのエミッションマップを仕込んであります。
デカール
デカールは別のテクスチャ1枚にまとめてあるのでしっかりとした解像度で見ることができます。
![](https://assets.st-note.com/img/1724646992149-utjv8vg506.png?width=1200)
![](https://assets.st-note.com/img/1724646657492-2iyA3fnZPI.png?width=1200)
ゴミ箱
![](https://assets.st-note.com/img/1724647446141-XLVi3AIwfN.png?width=1200)
ドリンクをたくさん買うと思ったよりも散らかるのでゴミ箱も必要だな…となって作ったものです。
最初適当にギミックを組んだらピックアップすべてをDestroyするゴミ箱になってしまって危険だったので、ドリンクだけになっています。
今思うとmomomaさんのピックアップオブジェクトを元の位置にお片付けするギミックみたいな感じにしてもよかったかもですね。
ギミック
今回の自動販売機のギミックは仕様を私が決めて、
実装はさばみりんさん(@Sabamirin_mof)に作成してもらいました。
お仕事募集中とのことなので、Udonギミック類の依頼があれば頼んでみても良いかもです!
Luminous Hotelの自販機、取り出し口と釣り銭口をパカパカして遊べます
— さばみりん🐑 (@Sabamirin_mof) August 11, 2024
プレイヤーの手の位置を参照しギミック担当こだわりの手触りとなっております
ギミックとしてはシンプルめなものなので、ちょっといじればドリンク以外を買えるようにできたりもします https://t.co/0yScMkvYAW pic.twitter.com/OlDlXFoxLH
お釣りのところをパカパカできたり、かなりのこだわりの仕様になっています。
![](https://assets.st-note.com/img/1724656241508-kbwFBLWd8o.png)
UdonChipsにも対応してもらっているため、他のUdonChipsアイテムと合わせて遊ぶことが可能です。
![](https://assets.st-note.com/img/1724646349361-5N2SQUCBwp.png?width=1200)
飲み物
![](https://assets.st-note.com/img/1724648567015-sSoOKqPFHy.png?width=1200)
この飲み物、頑張りました!
パッケージのネタに目が行きがちではあるのですが、これらのペットボトルは不透明なのです。
自動販売機の都合上、たくさんのオブジェクトを置くことになるので、透明オブジェクトだとそこそこ重くなってしまいます。
なので、なるべく不透明で作る必要がありました。
ディスプレイされているドリンク類に関しては、前述の後ろから光を当てた状態をベイクすることで透明表現をクリアしました。
問題は出てきた商品です。
手に取れるということは一定の光が当たっているわけではないので、光をベイクする方式はとれません。
なので、代替表現としてリフレクションプローブを使いました。
最初はカスタムリフレクションプローブをペットボトルの中に個別にいれていましたが、流石にそれはどうかと思ったので、リフレクションを映す別の代替手段を探しました。マットキャップも試したのですが、空間の色合いと馴染まなくなってしまう問題がありました。
最終的に辿り着いたのがLilToonでした。LilToonはリフレクションプローブの影響度を調整できるので、強めにリフレクションを反映させることで、環境に合わせてそこそこの見た目を実現することができました。
![](https://assets.st-note.com/img/1724648622902-qjxHF5FviL.png?width=1200)
これってもしかしてGraviTeaってこと!?って思って撮った写真 pic.twitter.com/w1SoA8E4u0
— Chii (@eco_chii) August 6, 2024
ちなみに、突然バズった「重力茶」のパッケージは実はペットボトルの素材の流用です。
街
![](https://assets.st-note.com/img/1724648954607-ngVDK3Olwy.png?width=1200)
![](https://assets.st-note.com/img/1724648937366-hYf7rSEcWO.png?width=1200)
街のサイズは意図的にパースがかかるように小さくしています。
というのもNearClipとFarClipの問題があるからです。
FarClipを10000などにあげてしまうと、VRChat民が好きなNearClip0.01(いわゆるガチ恋距離)が実質効かなくなってしまいます。
VRChatのメニューから一時的に強制ONにすることはできますが、それをすると結局遠景が見えなくなります。
なので、本当は実寸で作れればいろいろと楽なのですが、だまし絵のような感じで空気遠近を利用して距離感を稼いでいるのと、遠くのものほど小さくなるようにしています。
隣のビル
![](https://assets.st-note.com/img/1724648766573-IRc3DODy0L.png?width=1200)
偽インテリアマッピングとか呼んでいたやつ。
最初はインテリアマッピングでビルの内部を表現しようかと思っていたけど、近景は普通にメッシュの方がクオリティも高くて良いのでは?
ということに気づいたので、内装まで簡単に作ることにしました。
![](https://assets.st-note.com/img/1724648773405-ySZ8gUsGrW.png?width=1200)
ただ、ライトマップを大きく消費してしまうのを避けるために、Unity側でライトベイクはせず、Blenderで1階層分焼いてUVを使いまわす形にしてあるのでエコな実装ではあります。
開く窓
![](https://assets.st-note.com/img/1724660290806-s3zhdeM1aq.png?width=1200)
窓、開けられます。
「なんでただでさえ忙しいのにこんなの実装したの!!!」ってるらプロデューサーが怒ってます。
せっかく歩けるんだし外に出たいじゃん!!!!
ちなみに隠し要素はここから見つけに行けます。街の頂を目指してみてください。(アバターギミックとかは不要です)
ライトマップ
私の販売ワールドは全部そうなのですが、ライトマップをちゃんと処理しています。
ただUV2を開いている、というだけではなく、丸くなるべきところは丸く、シャープなところはシャープになるようにしています。
![](https://assets.st-note.com/img/1724659745364-RCLEUldecB.png?width=1200)
通常のUV展開に加えて、UV2の方でもパズルをすることになるのです。
この処理を全部のメッシュに対して行っているので、なかなか大変です。
でも綺麗になるからやめられない…!
詳しいことはCGWORLDのVRChat特集の会でライトベイク記事を執筆させていただきましたのでそちらも見てみてください!
ロフトのジャンプ台
![](https://assets.st-note.com/img/1724649176573-ueMXOaHspK.png?width=1200)
ロフトの階段、今までは超圧縮階段を使っていましたが、以前vketのブースで見かけたスクリプトによる打ち上げ方式がとても気持ちよかったので採用しました。
でも自然な動作なので、言われないと気づかない人は多そうですね。
ちなみに、隠し要素に使ってるビルの踏切台のギミックはこれの流用です。
朝システム
Luminous Hotel は朝になると、朝が来ます。
4:00とかいう基本起きてちゃ駄目な時間に起きてる人だけ変化の瞬間をみることができるので、超夜更かししてしまったときなどに見に来てみてください。
このシステムは入れてよかったです。
VR睡眠してない人には伝わりにくいかもですが、眼が覚めた時に朝になっているとちょっと感動します。
朝4時になったら朝が来るギミックできた。昔も自宅ワールドに入れて使ってたけど、V睡してると朝起きたら明るくなってるの、なんか嬉しいのよね。あと、朝のホテルの空気感とかも結構好き。 pic.twitter.com/m55xb5plKy
— るら/VRC (@Lu_Ra_999) March 21, 2024
開発中はLatejoinerが入ってくると急に朝から夜に切り替わったりしたりで大変でした。時間トリガーはデバッグが難しいということもあり、私自身が住みながら調整してました。
InRoomChecker
客室の扉の外には室内にいる人のリストを表示するギミックを用意していました。
![](https://assets.st-note.com/img/1724649386744-WFZALG2Tsz.png?width=1200)
何度やっても変なバグが出ると思ったらワールド原点に一瞬読み込まれるアバターがトリガーに引っ掛かってました。
原点にギミックを置いてはいけないというVRC風水がここにきて牙を剥いてきましたね…。今はVRC側のアプデで問題なくなったとかなんとか。
日替わりギミック
![](https://assets.st-note.com/img/1724649453584-rdD84bEnie.png?width=1200)
販売ワールドなので、デモワールドを快適にしすぎると「買わなくていいじゃん」になってしまいます。それは長期的にみると高いクオリティでワールド制作を続けられるかどうかの死活問題につながってきます。
ワールド制作者はアバターや服と違ってどうしても需要が限定的なので…
とはいえ、せっかく遊びに来てくれた人にはくつろいでいってほしいし、VipRoomの鍵部屋方式にすると見せたいものを見せられない。
ということで、絶妙なラインを取ったのが日替わりギミックです。
ホテルであればいつも望みの部屋が空いているとは限らない、というのはそこまで違和感はないし、むしろ毎日変化があるというのを楽しむことができて、パブリック版としてはちょうど良いと思いました。
なかなかこういった時限ギミックは見かけないので他にもいろいろできそうではあります。
ミラー
ミラーは近づくと自動で点灯し、離れると消えて消し忘れが無いようになるギミックを制作しました。
![](https://assets.st-note.com/img/1724650769596-aMnoUjfqkD.png?width=1200)
デフォルトでそんなに重くないLowMirrorがAutoOnになるようにしておくのは良さそうな感じがしますね。
ちょっとしたこだわりとして、一か所でミラーの設定をHQなどに変えると、ちゃんと全部のミラー設定が変更されるような工夫をしてあります。
何度も同じのを設定しなくてよくなるのです。
こういったギミックの調整は以外と面倒ではあるのですが、地味で気づかれない…
Quest
もともと少し意識して作っていたこともあり、Quest対応は難なく実装できました。
ただ、ポストエフェクトが使えなくなるためSleepとドアを通ったときのフェードアウト用のシェーダーは個別に用意してあります。
軽量化モード
![](https://assets.st-note.com/img/1724659394307-fngWqFy3Ty.png?width=1200)
![](https://assets.st-note.com/img/1724660154122-jlkHGoJLmp.png?width=1200)
あんまり気づいてる人はいないかもですが、PC版でも軽量化モードのボタンを押すと外の景色のビル以外がスカイボックスに置き換わり、その状態でも朝が来るようにしてあります。
まとめ
さて、散文で大変長々と語ってしまいました!
LuminousHotelは、CGWORLDの記事でも紹介していただけて、大変多くの機会にめぐまれたワールドでした。
これからもワールド制作を続けていこうと思いますので、今後とも応援よろしくお願いします~!
![](https://assets.st-note.com/img/1724639892144-voUW50PR6I.png?width=1200)
この記事が気に入ったらサポートをしてみませんか?