用途:把游戏设计意图转译为可执行的循环架构,避免各系统孤立运行、缺少进程与胜负边界。主要能力包括四类模式。核心循环脚手架:以 IGamePhase 接口(EnterAsync/Tick/ExitAsync)配合 GamePhaseConfig 资产,由 GameLoopController 按顺序驱动阶段,同一时刻仅一个阶段激活,新增阶段只需新类与 SO 资产。会话生命周期:SessionManager 管理单次会话状态,提供 StartSession/EndSession/RestartSession 与 OnSessionStarted/OnSessionEnded 事件,可在不重载场景的情况下重开。胜负条件架构:WinConditionBase/LoseConditionBase 抽象 SO 与 ConditionEvaluator 组合评估,支持 AllRequired/AnyRequired,建议由玩法事件触发 Evaluate 而非逐帧轮询。元循环钩子:MetaProgressionService 为普通 C# 类,经 Service Locator 注册,监听 SessionResult 并派发 MetaRewardBase 奖励,存档交由 unity-save-system。使用方式:需先具备 unity-state-machines、unity-game-architecture、unity-data-driven 前置技能;阶段、条件、奖励均以 ScriptableObject 在 Inspector 配置。限制:阶段切换必须异步(Awaitable),同步切换会造成卡顿与竞态;会话状态与持久状态须严格分离;条件需处理中途加入与规则变更。完整脚手架见 references/game-loop-scaffolds.md,其余细节暂未提供。
unity-game-loop
设计与创作
更新于 10-16 01:37