Unity事例ノート

UNITY

オブジェクトに触れたとき別シーンへ移動

ゴールに触れたとき、別シーンへ移動するしくみをつくってみましょう。

シーン移動後も、オブジェクトが消されず、そのまま残るようにします。

関連記事:
【Unity C#】移動先のシーンで座標を指定する
【Unity C#】別シーンへ遷移するボタンを設置する

シーンを追加

まずはシーンを2つ作成します。

Scene1を開き、ファイル > ビルド設定 > シーンを追加。

同じようにScene2も、シーンを追加します。

シーン1のオブジェクトを用意

Scene1を開き、オブジェクトを用意していきます。

CubeオブジェクトをGoal、SphereオブジェクトをPlayerと名前変更しました。

床としてPlaneオブジェクトも作成します。

それぞれのオブジェクトには、わかりやすい色をつけています。

Goalに、Goalという名前でタグをつけましょう。

Playerにはリジッドボディを追加しています。

ここまでできれば、シーンをいったん保存します。

シーン2のオブジェクトを用意

続いて、Scene2を開きます。

ここにはPlaneオブジェクトだけを作りました。

判別しやすいように、シーン1とは違う色をつけます。

以上ができれば、シーンを保存しましょう。

シーン遷移のスクリプト

再び、Scene1を開きましょう。

Playerに、PlayerMove.csを作成して追加します。

シーン移動のスクリプトを書きます。

using UnityEngine.SceneManagement; はシーン遷移するときに書いておく必要があります。

DontDestroyOnLoad(gameObject); を入れて、シーン移動後も、オブジェクトが残るようにしています。

プレイしてみましょう。

Scene1へ戻るボタンを、【Unity C#】別シーンへ遷移するボタンでご紹介しています。

関連記事:
【Unity C#】移動先のシーンで座標を指定する
【Unity C#】別シーンへ遷移するボタンを設置する