用途:该技能用于判断某个 Unity 设计问题是否需要引入设计模式,并给出最多 1-3 个推荐模式及理由,同时说明为何更简单的方案不够用。触发场景包括:判断哪种模式适合某问题、构建解耦系统、在事件、状态机或对象池方案之间抉择。
主要能力:给出模式选用指引。ScriptableObject 用于作者配置、共享静态数据、事件通道与可复用数据资产,避免作为每次运行可变游戏状态的默认容器。C# 事件与委托用于所有权清晰、有明确退订点的一对多通知,避免用于需要顺序、返回值或复杂调试的命令式流程。全局事件总线仅在多个系统确实需要广泛解耦通知时少量使用,不应作为解耦的默认答案。接口用于多实现或更清晰的依赖边界。状态机用于互斥状态与显式转换。对象池用于子弹、特效、敌人、UI 项等频繁生成与销毁。服务层用于少量跨场景系统。泛型与自定义特性用于消除重复样板。
使用方式:先读取模式选择指引,再从中挑选 2-3 个可行实现并排对比切换成本、查询成本、代码复杂度与失败模式。资料以“过场动画暂停 100 个敌人 AI”为例对比字段标志、enabled=false、子集列表三种实现,并建议选择权衡开始显现的最小规模,同时写明每种方案会变差的地方。若某方案明显有界(如 N≤10、状态每会话只变一次、仅启动时运行一次),一段说明即可,无需完整对比。
限制:该技能模式为仅文档,无 REST 技能需要门控。资料未提供价格、平台、安装命令或具体代码实现细节;调用其他技能前若参数系根据名称或描述猜测,应先阅读文件或通过 GET /skills/recommend?includeSchema=true 获取模式。分类依据其面向 Unity 设计模式决策,归入编程与开发。