立命館大学にてゲーム制作を行うサークルの総合wikiです。

シーン遷移を実装する

まず、unityを開いてシーンを二つ作成します。
ここでは、分かりやすく「open」シーンと「goal」シーンという名前にしました。自分の分かりやすい名前にしてください。

次にC#スクリプトを書いていきます。今回は「open」シーンから「goal」シーンへと遷移させたいので下記のようなコードにしました。
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using UnityEngine.SceneManagement;//これを追加しないとシーン遷移ができない!
public class NextScene : MonoBehaviour
{
    // Start is called before the first frame update
    void Start()
    {
        
    }

    // Update is called once per frame
    void Update()
    {
        if (Input.GetKeyDown(KeyCode.Space))//スペースキーを押すと「goal」シーンへと切り替わる
        {
            SceneManager.LoadScene("goal");
        }
    }
}

注意すべき点は、「using UnityEngine.SceneManagement」を書き込まないとシーン遷移ができない点です。
忘れやすく、エラーの基になってしまうので注意しましょう。

この状態ではまだシーンが空白のままなので、テキストを表示させて分かりやすくしましょう。
Hierarchyウィンドウの所で右クリックし、UI->TextをクリックしてTextを表示させてください。
以下のような状態になりました


同じように、「goal」シーンにもテキストを表示させましょう。
これで少しはシーンが切り替わったことがわかりやすくなったと思います。
そして、先ほど書いたシーン遷移のスクリプトをopenと書いたテキストオブジェクトに持たせましょう。

これで完成!といきたいところですが、あと1ステップ必要になります。
File->Build Settingsと進み、Scene In Buildの所に二つのシーンを追加します。

このとき、一番上に最初に表示させたいシーンを持ってきてください。ゲームを起動した際に、一番上に置いたシーンが最初に表示されるからです。
以下見本です。


これでシーン遷移はできると思います。
お疲れさまでした!

コメントをかく


「http://」を含む投稿は禁止されています。

利用規約をご確認のうえご記入下さい

メンバーのみ編集できます