前回はクレーンゲームを作りました。今回はクレーンゲームを配置するゲームセンターについてです。
ゲームセンターを作る
ゲームセンターを作っていきます。

作ったクレーンゲームを複数設置。何かこれだけでもゲームセンターっぽくなりました。ゲームセンターを構成する要素にクレーンゲームって凄いある気がする。人のイメージとして。

ついでにゲームセンターといえばやっぱり夜なので、SkyLightは削除して、DirectionalLightを上向きにします。

真っ暗になるので、光源を大量に設置します。ライトは全てスタティックライトです。ここまで追加するとビルド時間がかなり長くなります。

光源を設置してビルドしたらゲームセンターの雰囲気が出てきたように思えます。
エディターだけ自動露光を削除する
夜のゲームセンターの演出のために、太陽光を無くして店内の明かりをいっぱい設置したために、店内から店の外に視線を移動させると、自動露光の効果によって真っ暗になります。

店の外に視線を変えたところ。真っ暗です。
この自動露光の効果自体は人間の目の視覚効果と同じで、ゲームの雰囲気作りに一役買っている。なので実行時は自動露光をオンで、エディタ上でだけ自動露光を切りたい。調べてみるとビューポートのライティングのところにありました。

露出がAutomaticになっているところを、固定にすれば解決です。
モブを配置する
自分しかいないゲームセンターは寂しいので、モブとしてデフォルトのマネキン(ブルーマン)を配置します。

このままではさすがに違和感バリバリなので、推理モノに出てくる黒い人のようにしてみたいと思います。

マテリアルのシェーディングをUnlitにして単色で塗りつぶします。

ついでに肩書きを表示するために、ビルボードを作ります。

CustomDepth Passを有効にして、常に前面に表示できるようにします。

ゲームセンター内にいる客…のような正体不明の人ができました。

吹き出しも「客」肩書きテキストと同じように、ビルボード+CustomDepth Passによる常に前面にレンダリングしています。
モブを動かす
モブができたらゲームセンター内を徘徊するようにします。AIについては公式ドキュメントに詳しく書かれています。ドキュメントにあるようなBehaviorツリーを使わなくても、ランダムで徘徊させるぐらいなら簡単にできます。

NavMeshBoundsVolumeを追加して、動ける範囲を設定

後はGetRandomReachablePointInRadiusでランダムに移動できる点を取得、SimpleMovetoLocationでその地点まで動かすことができます。
これを定期的に行えばモブのランダム徘徊は可能です。全く賢くはないですが。
ゲームセンターの小物を配置
説明不要ですが、小物を配置していきます。

両替機、ゲームセンターに必須ですね。動かないけど。

ポスター。ゲームセンターに貼ってあるポスターは欲しくなります。椅子はスターターコンテンツのものです。でもサンプルのメッシュを使っていいというのも中々オツですね。

こっちはエレベーター。ドアが開閉するようになってます。

デモサンプルにも自動ドアがありましたが、ドアの開閉はタイムラインを使うといい感じにできます。開ける時はPlayに接続してタイムラインから出てくる数値に従ってドアのlocationを操作する。閉める時はReverseに接続だけでOK。

できたゲームセンターがこちら。
ゲームセンターの外も作る
入り口はガラス製のドアで外が見えるので、店の外も見える範囲で作ります。

画像はスカイライトで明るくした状態でのスクリーンショットです。
道路に通行人や車をスポーンさせる

こちらも明るくした状態での動画です。店の前を車と通行人が通るようにして喧騒な感じを出します。

やり方はブルーマンをスポーンさせた後、移動させると同時に、

SetLifeSpanで寿命を設定します。これで自動でDestroyされるので後は適当な間隔でスポーンさせればランダムな通行人が完成です。

車の方も同じようにしていますが、こちらはランダムで色を変える処理とリボントレイルによるテールランプの尾を引くようなエフェクトを入れています。AnsqweHubのココが参考になりました。
ポーズとゲームのやり直し

ポーズはSetGamePausedだけで動作します。超楽。ポーズ画面を表示して、解除やゲームのやりなおしを選択するので、ShowMouseCursorでカーソルを表示します。

ポーズ画面

ゲームをやりなおす際はRestartGameを呼び出すだけで各種設定がリセットされてリスタートできます。ポーズとリスタート共々非常に楽です。
これクレーンゲームが大体完成しました。後はエンディング画面です。
ではでは。