Sistema Anti Yo-Yo
Uno de los problemas más irritantes de los sistemas de escalado dinámico es el Efecto Yo-Yo (o ping-pong de calidad).
El Problema Central
Sin un control inteligente, el sistema entra en un bucle infinito:
- Los FPS caen debido a una escena pesada.
- El plugin reduce la calidad gráfica (e.g., corta la resolución).
- La carga disminuye y los FPS suben por encima de la línea base.
- El plugin deduce que hay Margen de Rendimiento (Performance Headroom) disponible y restaura la calidad gráfica al máximo.
- Los FPS caem de nuevo. El ciclo se repite.
En consecuencia, el jugador sufre un parpadeo continuo de calidad (Quality flickering): las sombras aparecen y desaparecen constantemente, y la imagen "salta" cada segundo de borrosa a nítida.
La Solución WebAP: Bloqueo de Penalización
Erradicamos completamente este problema implementando el concepto de un Bloqueo de Penalización (Penalty Lockout). Se basa en dos parámetros de la configuración del plugin.
Cuando el plugin aumenta la calidad gráfica, activa un temporizador oculto: la Detection Window (por ejemplo, 15 segundos). Durante este período de tiempo, el Indexer supervisa de cerca la estabilidad del fotograma.
Si los FPS caen repentinamente durante esta ventana, el sistema saca una conclusión definitiva: «La mejora gráfica anterior fue un error; el dispositivo no puede mantener este nivel a larga distancia.»
Se aplica una penalización:
- El plugin disminuye inmediatamente la calidad de nuevo.
- Se aplica una estricta Penalty Lockout Duration (por ejemplo, durante 60 segundos).
- Durante la duración de este minuto, se le prohíbe categóricamente al plugin intentar aumentar la calidad gráfica nuevamente, incluso si los FPS se disparan y el procesador se inactiva.
Bloqueo de Sesión (Session Lock)
Si la dinámica de tu juego presenta picos de carga que ocurren en oleadas, y prefieres que la calidad nunca intente recuperarse después de la primera caída, simplemente especifica un valor masivo en el campo Penalty Lockout Duration (por ejemplo, 600 para 10 minutos o 3600 para una hora). Esto bloquea efectivamente los gráficos en un nivel bajo constante hasta el final de la sesión de juego.
Prioridad de Fluidez
La penalización bloquea exclusivamente los intentos de mejorar el renderizado. Si el jugador entra en una escena aún más pesada y los FPS caen por debajo del umbral crítico, el plugin aún puede disminuir la calidad con urgencia. El sistema invariablemente prioriza la fluidez del juego sobre los efectos visuales.
