Unity教學 EP.7|場景切換與管理(Scene Management)
專欄/短評

寄樹人猿 RON
更新日:2025年4月2日
Unity 裡的遊戲通常不只一個畫面,從「主選單 → 遊戲關卡 → 結算畫面」都屬於不同場景(Scene)。這篇我們來學會場景之間的切換,為你的遊戲建立完整流程!
一、建立與儲存場景
你可以從 File → New Scene 新增場景。設計完後,記得 Ctrl + S
儲存,建議放在 Scenes
資料夾裡以方便管理。
範例:
StartScene
:主選單GameScene
:主遊戲關卡EndScene
:結束畫面
二、加入Build Settings
所有你要切換的場景都必須加入 Build Settings 才能被使用。步驟如下:
- 開啟 File → Build Settings
- 點選「Add Open Scenes」加入目前場景
- 多個場景可依上下順序排序,index從0開始(通常是主場景)
三、使用 SceneManager 切換
先加入命名空間:
using UnityEngine.SceneManagement;
在按鈕中呼叫切換方法:
public void GoToGameScene() { SceneManager.LoadScene("GameScene"); }
你也可以用數字來切換:
SceneManager.LoadScene(1); // 載入Build Index為1的場景
四、延伸:非同步加載與Loading畫面
有時場景資源多、載入時間長,建議使用 LoadSceneAsync
:
IEnumerator LoadSceneWithDelay(string sceneName) { AsyncOperation operation = SceneManager.LoadSceneAsync(sceneName); while (!operation.isDone) { // 可以顯示讀取進度條 yield return null; } }
可搭配一個 LoadingScene
作為中介,讓玩家不會看到黑畫面。
五、物件跨場景保存
如BGM物件或全域管理器可使用:
DontDestroyOnLoad(gameObject);
這樣切換場景時,該物件不會被摧毀。
Unity教學-從零開始打造你的遊戲世界
Unity 一對一/小班制教學|新手入門到進階開發,依需求客製課程內容
IT/程式 > 程式設計
$ 100000

$ 100000

0 / 1000