SuperAPI AI 工具集

unity-singleton-pattern

编程与开发

查看项目

更新于 10-16 01:30

技能介绍

用途:为 Unity 项目中的全局系统(如 GameManager、UIManager、InputManager)提供单例实现,统一管理全局访问与生命周期。

主要能力:Singleton 为标准管理,出现重复实例时销毁新实例、保留原实例;PersistentSingleton 在标准基础上加入 Don't Destroy On Load(DDOL),用于跨场景保持状态;RegulatorSingleton 采用反向逻辑,销毁旧实例、保留最新实例,适合热切换;StaticInstance 提供轻量全局访问,但不做重复实例约束。

核心文件(最多 3 个):SingletonBase.cs.txt 提供经典与持久化变体的泛型基类;SingletonRegulator.cs.txt 提供带时间戳的调节器逻辑;SingletonExample.cs.txt 提供 Game 与 UI 管理器的具体示例。

使用方式:标准管理器可写为 public class UIManager : Singleton<UIManager> { },通过 UIManager.Instance.Show(); 访问;持久化管理器写为 public class InventoryManager : PersistentSingleton<InventoryManager> { },可跨场景存活;调节器写为 public class MusicSystem : RegulatorSingleton<MusicSystem> { },生成新实例会自动销毁旧实例。

适用场景:需要全局唯一访问点的管理器、需要跨场景保留状态的系统,以及需要热切换或替换旧实例的系统。

限制与原则:应始终使用限制最严格的版本;若不需要跨场景持久化,使用 Singleton<T>;若只需引用且不在意重复实例,使用 StaticInstance<T>。资料未提供安装命令、收费、价格或平台等更多信息。