Unity Easy Save 教學

CG 數位學習網 > Unity Easy Save 教學

 


Easy Save 3 教學

將 EasySave下載後並匯入資源包,本章開始的教學只使用 EasySave3 功能,可將匯入檔案的 EasySave2 取消勾選。

首先在遊戲場景加入玩家角色,您可以使用 Unity 內建的第一人稱控制器或第三人稱控制器,或是自行製作的角色。

加入測試用的按鈕,功能為「保存遊戲進度」、「載入遊戲進度」、「備份到伺服器」、「從伺服器還原」。

 

建立一個 C# 腳本並命名為「PlayerStatus」,依照遊戲需求加入需要記錄的數值,以下範例包括字串、整數、浮點數、布林值、位置與旋轉值。為了便於檢視與修改數值,此腳本的變數可先使用 Public 宣告的方式。若需要顯示位置與旋轉的數值,可以在 Update( ) 中加入下列程式碼。除了玩家的基本屬性,透過陣列製作切換武器的功能。

 

將此腳本套用到玩家角色,透過 Inspector設定玩家屬性的初始值。★

 

從本機儲存與載入檔案

先製作檔案儲存與讀取的按鈕,我們將分別撰寫本地端儲存與載入的腳本。建立一個空物件,重新命名為「GameManager」,此物件將先用於 Easy Save 的儲存功能

建立一個 C# 腳本並命名為「LocalSave」,附加到 GameManager 物件,腳本的程式碼如下:

程式碼的上半段的變數用於取得玩家角色目前的狀態,以便稍後儲存。

程式碼的下半段是儲存檔案的方法,利用 ES3.Save <變數型態> ("儲存標籤" , 要儲存的變數) 儲存檔案至本機硬碟。

 

讀取遊戲進度

建立一個 C# 腳本並命名為「LocalLoad」,用於讀取儲存於本機的遊戲進度。

當玩家按下「載入遊戲進度按鈕」時,使用 ES3.Load <變數型態> ("儲存標籤") 來讀取資料,指定給玩家角色。

 

為「保存遊戲進度」與「載入遊戲進度」按鈕增加 On Click 事件,再將控制物件 GameManager 拖拖到欄位中,並分別選擇 LocalSave、LocalLoad 腳本儲存與載入的方法。

 

測試遊戲,移動玩家角色,然後按下「保存遊戲進度」按鈕存檔。

按下「載入遊戲進度」按鈕,即可讓玩家角色回到先前儲存的位置。

 

關於儲存檔案的位置以及名稱的設定,執行 [ Window >  Easy Save3...] 開啟 Easy Save 設定對話框。

透過 Settings 分頁可編輯儲存格式與檔案名稱,是否使用資料加密與密碼,目前設定保留預設值即可。

透過 Tools 分頁可以開啟儲存資料夾,也可以刪除儲存檔案或是 PlayerPrefs 資料(如果先前設定選擇此方式)。

按下 Tools 分頁中的 Open Persistent Date Path 按鈕會開啟儲存檔案的資料夾,使用儲存功能後,資料夾中將會出現SaveData.es3檔案。

 

TOP