Skip to content

Anti Yo-Yo 系统

动态缩放系统最令人恼火的问题之一是溜溜球效应 (Yo-Yo Effect)(或质量乒乓)。

核心问题

如果没有智能控制,系统将进入无限循环:

  1. 由于场景繁重,FPS 下降。
  2. 插件降低图形质量(例如,降低分辨率)。
  3. 负载下降,FPS 升至基线以上。
  4. 插件推断有可用的性能余量 (Performance Headroom),并将图形质量恢复到最大。
  5. FPS 再次下降。循环重复。

因此,玩家会经历持续的质量闪烁 (Quality flickering):阴影不断闪烁,图像每秒从模糊“跳”到清晰。

WebAP 解决方案:惩罚锁定

我们通过实施惩罚锁定 (Penalty Lockout) 的概念彻底根除了这个问题。它基于插件设置中的两个参数。

当插件提高图形质量时,它会触发一个隐藏的计时器——Detection Window(例如,15 秒)。在此时间范围内,索引器 (Indexer) 会密切监视帧稳定性。

如果 FPS 在此窗口期间突然下降,系统会得出一个明确的结论:«之前的图形升级是一个错误;设备无法长距离维持此级别。»

执行惩罚:

  1. 插件立即将质量降回。
  2. 应用严格的 Penalty Lockout Duration(例如,60 秒)。
  3. 在这一分钟内,严禁插件尝试再次提高图形质量,即使 FPS 飙升且处理器处于空闲状态。

扩展锁定 (Session Lock)

如果您的游戏动态具有以波浪形式发生的负载峰值,并且您希望在第一次下降后质量永远不要尝试恢复,只需在 Penalty Lockout Duration 字段中指定一个大数值(例如,600 代表 10 分钟或 3600 代表一小时)。这实际上将图形锁定在一致的低水平,直到游戏会话结束。

流畅度优先级

惩罚专门阻止改善渲染的尝试。如果玩家进入甚至更重的场景并且 FPS 降至临界阈值以下,插件仍可紧急进一步降低质量。系统始终将游戏流畅度置于视觉效果之上。