:D
這個部分的概念,其實跟把訓練好的模型還有過程的Loss value、Metrics value儲存下來很像呢,只是我現在要學習的是在Unity這個軟體中,要怎麼實現它才比較好呢?
會學到:
在開始之前,我對這些問題的回答是:
What do you need to implement, and where will you implement it ? Write down your thoughts now, to compare them with the approach we take.
因為是要儲存使用者最後所選的顏色,可以建立一個檔案,所以我猜是在MainManager.cs裡新增一個Start(),在開始時即從檔案載入資料,然後應該也可以新增一個End(),讓他在結束時寫入資料。
Where have you encountered similar functionality before, in Create with Code or other learning experiences? Even if you can’t access the code, think about examples of data persistence between sessions that you’re familiar with.
嘛,我也只有在訓練模型時,要在epoch結束時儲存模型資訊之類的東西做過而已。
Beyond Unity Learn, what resources could help you do this? Think about options within the Unity ecosystem and beyond it.
Unity ecosystem??? 不知道這個是什麼,跳過。
OK,這次要用來儲存的資料格式是JSON,就是副檔名是.json的那個。
using JsonUtility;
所以今天新學了JsonUtility
的用法啦,他是可以把程式中的class instance,快速轉成對應的json檔案。
...
比我想像的複雜許多:
把要打包的資料寫成一個class,然後針對這個class寫save()跟load() method(這裡是用JsonUtility完成)。
然後不需要在MainManager新增Start(),在原本的Awake()底下load()就好。
此外,為了讓使用者能具體看到儲存的資料,所以在畫面上也要顯示之前儲存的顏色是什麼,以及目前切換的顏色是什麼。這裡就需要一起調整Menu場景中UIHandler.cs的程式,讓他在目前使用的顏色打勾。
這邊的話,就是調用MainManager下的save()跟load()。