存檔的問題
本來只要使用Unity的 “Application.persistentDataPath”,即使更新了遊戲,存檔的位置都會是一樣的,所以更新遊戲後還能使用舊存檔。不過如果你的遊戲是WebGL,存放在像itch.io這類網頁,照使使用了“Application.persistentDataPath” ,存檔的位置每一次上傳新的build都會改變,因為每一次上傳,它的網址(url)都會改變,於是你的舊存檔便找不到了。
解決方法
解決方法就是,自己定義一條absolute path代替“Application.persistentDataPath”,例如“idbfs/YOUR_GAME_RANDOM_CODE”。加上_RANDOM_CODE是為了萬一有別人的遊戲跟你一樣名稱,也不會用了同一條path。
PersistentDataPath returns different paths for different builds
☝ 以上這是我在這裡學到的,使用時再加上以下的。
建立自定義path
如果你是用自定義的path,Unity不會自動幫你建立,你要自己先建立path才能使用:
if (!Directory.Exists(savePathName))
{
Directory.CreateDirectory(savePathName);
}
WebGL save的注意事項
存檔是放在用家的瀏覽器裡的,所以:
1.如果用家清除瀏覽器資料,或
2.換了電腦,存檔就沒了
相關教學
Code Monkey’s Simple Saving and Loading with JSON to a File (Unity Tutorial for Beginners)
0 Comments