-前言-
Unity 製作遊戲時, 常用 Time.timeScale = 0 來處理遊戲暫停. 根據官方說明, 該值為 0 時能做到時間暫停的效果, 如: animation 停止播放, 物理運算停止, Time.deltaTime 也變為 0, 協程函式 yield WaitForSeconds 不再計時…等. 因此, 大部分開發都會選擇使用 Time.timeScale = 0 實現暫停效果.
繼續閱讀Unity 製作遊戲時, 常用 Time.timeScale = 0 來處理遊戲暫停. 根據官方說明, 該值為 0 時能做到時間暫停的效果, 如: animation 停止播放, 物理運算停止, Time.deltaTime 也變為 0, 協程函式 yield WaitForSeconds 不再計時…等. 因此, 大部分開發都會選擇使用 Time.timeScale = 0 實現暫停效果.
繼續閱讀在 Unity 使用 Script 控制場經中物件時, 該 Script 類別需要繼承 MonoBehaviour 類別. MonoBehaviour 想必都不陌生, 它提供許多事件函式(event function), 並且遵循著 lifecycle 執行事件函式. 事件函式幫助開發者能更簡便/更直覺的監聽物件變化或做出對應處理, 儘管方便, 但若不能熟悉善用它, 反倒會被突然冒出來的 bug 嚇的措手不及.
繼續閱讀開發 .NET 專案時常用 NeGet 安裝/管理各種套件, 然而若需要將套件安裝在 Unity 專案會發現無法生效, 這是由於 Unity 編輯器會自動產生 Visual Studio 專案並重置其組態設定.
上次在 Unity 開發者大會聽到的內容之一-靜態程式碼分析, 能幫助開發人員快速的code reviewer, 避免人工檢查疏失, 甚至整合進CI流程中, 是個值得嘗試看看的東西.
靜態程式碼分析, 就是在不運行程式的情況下, 進行語法/語句/語意的分析(compiler做的事), 檢查是否有特定的程式碼不合規範, 提前發現並修正, 像是 Visual Studio “Squiggles" 分析 C++, “Resharper" 也有分析 C# 的功能.
State pattern 是設計模式中屬於 “行為相關" 的類型, 常用於流程控制, AI控制…等等.
有關 state pattern 的詳細介紹可以參考 設計模式-狀態機模式 以及 prepare a State pattern for Unity, 介紹了state pattern 的基本結構與延伸的使用方式, 看完後深深感受了它的魅力!