Unity の人気アセット「TopDown Engine」には、RPG やアクションゲームを作るのに便利な機能が最初から揃っています。その中でもよく使うのが シーンの移動です。
例えば「町からダンジョンに移動する」「部屋から別の部屋に入る」といった演出を簡単に作れます。今回は、そのやり方をステップごとに解説します。
デモシーンを利用するのが最も簡単なので、デモシーンをもとに適当に作ったステージを使っていきます。

シーンの準備
File > Build Profilesから、移動前のシーンと移動後のシーン、ロード画面のシーンを用意しておき、Scene Listに追加するのを忘れずに行いましょう。これをしていないと、ビルドの対象にならないので、エラーが出てしまいます。
ロード画面のシーンは、デモシーンを利用していれば既に用意されているので追加する必要はありません。

シーン移動用のトリガーを設置する
シーンを移動するためには、プレイヤーが触れると発動する「トリガー」を配置します。
でもシーン内のプレハブをコピーしてくるのが最も手軽な方法です。
TopDownEngine > Demos > Minimal2D > Prefabs > Props内にあります。

もし1からトリガーを作るには
1からトリガーを作るには、まずGameObject > Create Empty
で空のオブジェクトを作成します。名前は適当にSceneTriggerとしておきます。
Box Collider 2D, Go to Level Entry Point を追加
Box Collider 2D
を追加し、「Is Trigger」にチェックを入れます。このコライダー内に入ると、シーン移動がされます。
次にシーン切り替え用のスクリプト「Go to Level Entry Point」を追加します。インスペクターから、下の方にLevel Nameという欄があるので、移動先のシーン名を入力しておきます。

Auto Activationにチェックを入れることで、トリガーに入ったら自動的にシーン移動ができるようになるのでやっておきます。

また、現状ではゲーム中トリガーが見えないので、見えるようにするにはSprite Rendererで画像を設定しておきましょう。ステージの画像に被さって見えない場合は、Order inLayerの数値をあげると見えるようになると思います。

シーン移動のロード画面設定
シーンを移動するロード画面の設定は、LevelManagerというゲームオブジェクトで設定できます。

Loading Scene Nameのところに、ロード画面のシーン名を入力します。TopDown Engineのデモシーンであれば、既にロード画面のシーンも用意され、入力されています。
自作したい場合は、こちらに作ったものを入れてください。
ロード画面に移行するフェード(徐々に暗くなったり、明るくなったりする処理)の時間設定もできます。

実行してみるとこのようにシーン移動ができます。フェードも簡単にできるのがありがたいです。
まとめ
今回は TopDown Engine でのシーン移動方法 を解説しました。
- 最も手軽なのは、デモシーンに用意されている シーン移動用プレハブ をコピーして使う方法
- 1から作る場合は、
Box Collider 2D
とGo To Level Entry Point
を組み合わせてトリガーを設定する Level Name
に移動先のシーンを指定し、Auto Activation
をオンにすれば、トリガーに入るだけで自動でシーンが切り替わる- 見やすさのために
Sprite Renderer
を設定してトリガーを可視化できる - ロード画面の表示やフェード時間の調整は LevelManager から設定可能
TopDown Engine では、こうした「RPG 風のシーン移動」が最初から簡単に作れる仕組みが用意されています。デモのプレハブを活用すればすぐに試せますし、細かくカスタマイズすればオリジナルの演出も可能です。
次のステップとしては、ロード画面に表示用のテキストやイラストを追加する、といった演出を組み合わせることで、より完成度の高いゲームに仕上げられます。