# 动画体系阶段性小结 ## 1. 当前定位 目前动画体系已经从“页面里临时加 class”的阶段,进入了**有主链、有分层、有性能分级**的阶段。 当前主链可以概括为: - 事件触发 - `feedbackConfig` - `UiEffectDirector` - `FeedbackDirector` - `MapEngine` - 页面层 / 渲染层消费 也就是: **事件 -> 效果配置 -> 宿主提交 -> 页面 / Renderer 落地** 这说明动画已经不再是零散实现,而开始进入架构化管理。 --- ## 2. 已经完成的内容 ### 2.1 HUD 动效 已经完成: - 打点成功后的 `进度` 动效 - 打点成功后的 `点距` 动效 - HUD 数字轻量过渡: - 计时 - 里程 - 速度 - 心率 这些动效已经接入正式链路,不是页面单独临时处理。 ### 2.2 地图空间动画 已经完成: - 当前目标点状态强调 - 可打点状态强调 - 已完成点状态过渡 - 已跳过点灰态与标记 - 开始点 / 终点完成后的 settle 外环 - 轻量地图 pulse ### 2.3 局部 UI / Stage 动效 已经完成: - 轻量 stage flash - 顶部提示和局部反馈的基础动画承载链 ### 2.4 动画性能分级 已经完成 2 级动画分级: - `standard` - `lite` 当前 `lite` 的主要策略包括: - 减少 pulse 层数 - 降低几何分段 - 降低渲染动画频率 - 关闭部分 HUD 动画 - 关闭或减弱某些 stage/UI 动效 这意味着动画体系已经开始考虑**低端机表现**,不是只追求效果。 --- ## 3. 当前架构上的价值 动画体系现在已经带来了几个明确收益: - 动效不再散落在多个页面细节里 - 高频状态变化有了统一反馈语言 - 地图状态和 HUD 状态开始形成一致体验 - 性能分级已经进入体系,可服务低端机 从架构角度看,这意味着: **动画已经成为正式能力层,而不是临时视觉补丁。** --- ## 4. 当前还不够完整的地方 虽然主链已经成型,但当前还没有完全形成“动画字典”和完整 profile 体系。 目前仍然存在这些不足: - 哪些事件触发哪些动画,还没有整理成统一字典 - 部分高频状态切换还不够连续 - `跳点` 已有逻辑和状态,但动画语言还不完整 - 危险/高压状态动画还没有正式开始 - 动画 profile 还没有真正配置化 所以当前阶段可以定义为: **第一阶段后半段:主链已成型,但还需要把高频体验打磨完整。** --- ## 5. 下一阶段最值得做的事情 ### 5.1 先整理动画字典 建议先把动画按事件梳理出来,例如: - `session_started` - `control_ready` - `control_completed:start` - `control_completed:control` - `control_completed:finish` - `control_skipped` - `gps_lock_changed` - `guidance_state_changed` - `heart_rate_zone_changed` 并明确每个事件对应: - 地图动画 - HUD 动画 - UI 动画 - `lite` 下是否保留 这一步是当前最值得优先完成的工作。 ### 5.2 补完整“目标状态切换连续感” 继续打磨: - 当前目标 - 进入可打点 - 打点成功 - 切到下一个目标 让这一整段切换更连贯、更有节奏。 ### 5.3 补齐“跳点”动画 建议下一步把跳点也正式纳入动画体系: - 跳点确认后 - 当前点灰化 - 下一个目标接管强调 - HUD 给出轻量反馈 ### 5.4 再做危险 / 高压反馈 这部分适合进入下一阶段: - 高心率反馈 - 危险区反馈 - 幽灵追逐反馈 - 边缘呼吸 / 紧张感动效 这条线很适合后续玩法扩展。 --- ## 6. 建议的实施顺序 推荐继续推进的顺序: 1. 动画字典整理 2. 目标切换连续感补齐 3. 跳点动画补齐 4. 危险 / 高压状态动画 5. 更进一步的配置化 profile --- ## 7. 结论 当前动画体系已经是一个明确的阶段性成果: - 有主链 - 有分层 - 有高频核心动画 - 有性能分级 接下来最该做的不是“继续零散加动画”,而是: **把现有能力收成动画字典,并优先打磨目标切换与跳点这两条高频体验链。**