【無料】霧のワールド境界【VRChatワールドギミック】
- ダウンロード商品¥ 0





柵の外へ歩いていくと、足元から霧が濃くなっていきます。もう少し進むと視界が白く塞がり、画面に横線が走って、気がつくと少し違う向きのまま庭の内側に立っています。 霧の境界は、遊ぶ場所の端をこのように霧で隠す UdonSharp スクリプトです。場所を囲む霧の幕、頭を包む霧の球、内側へ戻す処理がひと揃いになっています。見えない壁にぶつかる代わりに、霧の中で迷って戻ってきたように見せられます。 60m 四方の幕まで作り終えたプレハブと、柵で囲った庭の見本シーンを同梱しました。屋外のホラーや、地図の端を見せたくない野外ワールド向けです。まず見本シーンを再生して、柵の外へ歩いてみてください。
できること
■ 霧がかかり始める 幕から 8m 内側に入ると、頭を包む球に霧が重なり始めます。幕へ近づくほど濃くなり、幕の手前では周りがほとんど見えなくなります。 ■ 画面を塞いでから戻す 幕から 4m 内側の線を越えると、0.45 秒で霧が全面を塞ぎ、横に走る乱れの線が出ます。塞がっている間に内側へ移し、0.9 秒かけて霧を引きます。移る瞬間は見えません。 ■ 向きを少し反らす 戻したときの向きは既定で 135 度回します。真後ろからわずかに外れるので、来た道をまっすぐ押し返された感じになりません。 ■ 外の幕と控えの壁 場所を囲む霧の幕は下ほど濃く、上は透けます。遠くの建物の足元だけが霧に沈みます。幕の外には厚さ 1m の見えない壁を置いてあり、処理落ちで戻しそこねても外へは出られません。 ■ 本人の端末だけで動く 処理はプレイヤーごとの端末で完結し、同期はしません。同じ部屋の人がいても、霧に包まれるのは端へ歩いた本人だけです。 ■ 値を変えるだけで作り直し 範囲の値を変えて手を離すと、幕・霧の球・控えの壁が作り直され、霧の色もシーンの Fog Color に合わせ直されます。置いたオブジェクトを選ぶと、幕・霧のかかり始め・戻される線・戻す先の 4 本の枠が地面に出ます。
注意
・確認したのは作者のエディタ(Unity 2022.3 + VRChat SDK3 Worlds)、ClientSim、PC VR の実機です。Quest の実機ではまだ確かめていません。確認できたら更新履歴に書きます ・戻すときは TeleportTo で本人を動かします。乗り物や椅子に座ったまま範囲の外へ出た場合の動きは確かめていません ・置いたオブジェクトの Scale は 1 のままにしてください。範囲の寸法は veilSize と returnSize で決めます。上下の軸の回転は効きます ・霧の色はシーンの Fog Color と揃える前提です。置いたオブジェクトを選ぶと、自動で合わせ直します。合わせ直すのは同梱のマテリアルのファイルそのものです。霧の色が違うシーンを 2 つ以上作るときは、シーンごとにマテリアルを複製して差し替えてください
同梱物
1. MistBoundary(本体。端までの距離の計測、霧の濃さ、内側へ戻す処理) 2. 頭を包む霧と乱れの線のシェーダ、場所を囲む霧の幕のシェーダ 3. 設定済みのマテリアル 2 個 4. 60m 四方の幕まで作り終えたプレハブと、幕の形 5. 柵で囲った庭と遠くの建物の見本シーン 6. インスペクター拡張(値を変えた時の作り直し、霧の色合わせ、範囲の枠) 7. README / LICENSE / CHANGELOG
動作環境
・Unity 2022.3 系 ・VRChat SDK3 Worlds(UdonSharp 同梱の版) ・PC VR 実機で動作確認済みです。Quest 実機は未検証です
導入手順
1. unitypackage を取り込む 2. Prefabs/MistBoundary.prefab を遊ぶ場所の真ん中の地面に置く 3. 範囲を変えるときは、インスペクターの値を変える。手を離すと作り直されます 4. 再生して、幕の方へ歩く 戻った直後にまた霧に包まれるときは、戻す先(returnSize)が霧のかかり始めより外にはみ出しています。インスペクターに注意が出るので、小さくしてください。霧がかかる前に戻されるときは、warpAt が fogStart 以上になっています。
MistBoundary の設定
・veilSize: 幕の外寸。X が横幅、Y が奥行き。既定 60 x 60m ・corner: 幕の角の丸みの半径。0 で角張る。既定 9m ・fogStart: 幕から何 m 内側で霧がかかり始めるか。既定 8m ・warpAt: 幕から何 m 内側で戻すか。既定 4m。fogStart より小さくして、霧が濃くなってから戻します ・returnSize: 戻す先の長方形。中心は幕と同じ。既定 24 x 24m。霧のかかり始めより内側に収めます。はみ出すと、戻った直後にまた霧に包まれます ・turn: 戻したときに回す角度。既定 135 度。180 だと真後ろを向き、押し返されたように見えるため少し外しています ・ignoreBeyond: 幕の外へこれ以上離れた所では何もしない。既定 20m。観戦部屋など、別の場所にいる人を巻き込まないため ・minHeight / maxHeight: 置いた高さから測って、この範囲にいるときだけ働く。既定 -3 / 8m ■ マテリアル ・MistOverlay の Fog Color、MistVeil の Color: 霧と幕の色。シーンの Fog Color と揃えます ・MistVeil の Opacity at ground / Solid up to / Clear from: 足元の濃さ、どの高さまで塗りつぶすか、どの高さから透けるか。既定 1 / 1.2m / 4.5m MistOverlay の Fog と Noise Lines は再生中にスクリプトが書き込みます。0 のままにしておいてください。
見本シーン
Scenes/MistBoundary_Sample.unity を開いて再生し、柵の入口から外へ歩きます。 見本シーンで変えてある値: 1. シーンの霧を Exponential Squared、密度 0.03、色を青灰にしています。遠くの建物の足元を霧に沈めるためです 2. 環境光を少し明るくしています。暗いと幕の濃さの違いが見えにくいためです
利用規約
再配布・改造など全部歓迎 ・個人、商用を問わず使えます ・クレジット表記は不要です ・改造したものも、そのままのものも再配布できます(有料でもかまいません) 本アセットは現状有姿で提供します。 記載の対応バージョン以外での動作は保証しません。 サポート・アップデートの提供は実施する場合がありますが義務ではありません。不具合報告は歓迎しますが、修正対応の実施可否・時期は作者の裁量とします。 外部の素材は同梱していません。
更新履歴
1.0.0 (2026-10-11) 初版





