DevNotes

[C#/Unity] 以《Endless End》為例聊一下怎麼做一個簡單的存讀檔系統

Json在Unity中的應用主要有兩種方式:一是使用Unity內置的JsonUtility;二是引入其他團隊/個人製作的dll/代碼,比如LitJson/MiniJSON等等,網絡上有很多不同的Json轉譯工具。不過於我而言,我一般都是直接使用Unity內置的JsonUtility來完成,這裡我就總結一下我是怎麼在《Endless End》中使用JsonUtility來完成存檔讀檔系統的。

[C#/Unity] 《Endless End》中的升降機實現總結

由於《Endless End》需要玩家「一層一層往上走」,因此,一些允許玩家垂直移動的道具就成為了必要場景物品。對於這一點,我做了兩個東西讓玩家「垂直移動」,其中一個就是可以讓玩家乘上後,自動升降的升降機。這篇文章是我對升降機功能實現過程的總結。

[C#/Unity] 為甚麼要用readonly和const

在我們遊戲開發的過程中,其實有很多的變量/字段都可能是需要頻繁使用,但是這些變量/字段的值又是在那個物體/類在實例化的時候、甚至是遊戲一開始時就已經決定好而且之後都不會再進行改變的,那麼我們在這些字段之前加上readonly或const的話,在使用的時候不但會更方便,也會更加安全。說的更準確一點的話,readonly會讓字段使用更安全,const會讓字段使用更方便。

[C#/Unity] 空間與整型值類型數據的選擇

我們常用的int在整型值類型中所佔用的空間是非常龐大的。其實很多時候我們都用不完這麼多的數值空間,我們可能只是聲明一個int speed的變量,它的值最大也不會超過1000,但是只要我們聲明了,對應的空間就會被佔用,也就是說,可以用16-bit解決的問題,我們足足多用了一倍的內存去解決。因此,根據變量的可能取值區間去判斷要用哪種值類型數據,可以有效減少記憶體的消耗。