[影片][Unity] 利用 UI 元件製作雷達圖 – Make Radar Chart with uGUI

前幾天用 Unity 的 uGUI 元件組合出了雷達圖效果,同時也能夠及時的修改數值,表現在圖表上,是個蠻有趣的嘗試。

如果要完整表達內容,可能要搭配大量的圖片,所以這次嘗試使用影片的方式來分享實作。

閱讀更多»

廣告

[C#/Unity] 這不叫 Singleton,叫 Service Locator – Practice of Service Locator

過去在《[C#/Unity] 更多 Singleton – More Singleton in Unity》這篇文章中,實作了一個名為 Singleton manager 的物件來做 Singleton 的註冊與使用。

但最近在研讀 相依性注入 (Dependency Injection) 相關文章時,才發現有個叫做 Service Locator 的設計模式,基本上就是我過去所實作的 Singleton manager。再加上一些關於抽象化的觀念又比當初更成熟了,因此便想趁機改善當初的設計,同時正名為 Service Locator

gamesystemmanager

(概念相似所以就直接借用舊圖片作為封面)

閱讀更多»

[Unity] 獨立自控的 UI 切換架構 – Independent UI Switching

過去在我的其他文章介紹過利用 狀態模式 / 狀態機 來控制遊戲程式的流程,是我相當喜歡且穩定的作法。在一般使用狀態機的情境下,所有的 UI 開關都由狀態機中的邏輯決定,UI 本身只是作為畫面表現的客體存在。

不過若用狀態機做為開發的專案核心,則代表會需要有一套是先架構的核心系統。如果是臨時的小型 prototype,或者在 game jam 環境展開的專案,引入一套架構並要新成員馬上建立起使用規範來利用這套系統,是有點不實際的。

所以是否有擺脫狀態機,甚至沒有一個集中式核心的小型替代方案可以用來管理流程跟 UI 切換呢?本文便是以此為出發點,所做的一個嘗試。

閱讀更多»

[Unity] 另一個物件池的實現 – Another Practicing of Object Pool

前天寫了篇文章《[Unity] 物件池的實現 – Practicing of Object Pool》討論 物件池 (Object Pool) 的使用目的,以及一個簡單的實作例子。

本文是要介紹另外一個新出爐的實作方式,考慮跟 Unity 機制做配合,以改善下面兩點:

  • 因為需要在場景中有一個物件來掛載物件池,如果要切換場景但保留物件池,需要特別建立為 DontDestory 物件。
  • 如果不是本來就設置在場景中,而是要跟 Resources 或 AssetBundle 中的 Prefab 做動態的配合,會不方便建立新的物件池。

實作方式

閱讀更多»