← 返回总览资源管理

资源管理:当前是“配置内建 + Demo 极简资源”,还不是完整资源系统

源码里没有 Addressables、AssetBundle、Prefab 加载器或资源生命周期管理器。核心资源概念主要体现为内建配置数据;Demo UI 只通过 Resources.GetBuiltinResource 取 Unity 内置字体。

当前资源形态

资源/配置当前位置管理方式评价
普通骰子面LuckyDiceDefaultConfig硬编码默认集合:2、3、4、5、6、clover。适合第一版可测闭环,不适合策划热改。
Lucky Dice 结果LuckyDiceDefaultConfig硬编码 rocket、thief 和默认 slot count。语义清楚,但还缺图标/Prefab 资源绑定。
规则表ComboRuleDefinition定义行加载为运行时 ComboRule已经具备迁移到 JSON/ScriptableObject 的形状。
目标模式映射TargetModeDefinitionresult key + target key -> mode key。适合作为玩法启动器的配置入口。
Demo 字体LuckyDiceDemoControllerResources.GetBuiltinResource<Font>("LegacyRuntime.ttf")仅 Demo 兜底,不是业务资源系统。

资源边界判断

当前框架刻意把核心运行时做成纯 C#,所以资源加载不能直接放入 Runtime 核心。真正落地生产时,建议在 Unity 接入层增加“配置提供者”和“表现资源解析器”:

Runtime Core
  只认识 ResultKey / TargetKey / ModeKey / DiceFace

Unity Integration Layer
  ResultKey -> Icon Sprite / Animation / Prefab
  TargetKey + ModeKey -> Scene / Controller / Launcher
  Remote or Local Config -> ComboRuleDefinition / LuckyDiceCandidateDefinition

后续资源系统建议

配置资源

ComboRuleDefinitionLuckyDiceCandidateDefinitionTargetModeDefinition 迁移为 JSON、ScriptableObject 或远端表时,保持先校验再创建 runtime config。

表现资源

新增一个独立的 Unity 层映射:ResultKey -> icon/prefab/animation,不要让 Runtime 持有 Sprite 或 GameObject。

目标玩法资源

TargetModeEntry 驱动目标玩法 launcher,launcher 再决定加载 scene、panel、prefab 或 addressable。

资源失败处理

资源加载失败应回到表现层兜底;核心选择结果不应因为图标缺失而改变。

证据