MMORPG
Anuncios

Optimización de rendimiento del cliente

Optimización de rendimiento del cliente
Reescribimos cómo el cliente maneja la memoria de las ventanas de interfaz. Hasta ahora, cada ventana que abrías quedaba cargada para siempre aunque la cerraras, y el motor gráfico la seguía procesando en cada frame. El resultado era que los FPS bajaban a medida que jugabas y no volvían a subir hasta que cambiabas de mapa.

El problema no era una ventana puntual sino el criterio general: había una lista de las pocas que sí se liberaban, y cualquier otra que abrieras se acumulaba. Dimos vuelta la regla — ahora se libera todo salvo el HUD que necesita quedarse en pantalla, así que ya no importa cuántas ventanas abras.

  • Auditamos las 253 ventanas del cliente una por una para determinar cuáles pueden liberarse sin romper nada. Solo quedan cargadas 25: barra de acciones, minimapa, chat, party y las demás piezas del HUD que están siempre visibles.
  • Medido en un mismo personaje abriendo y cerrando ventanas: antes los objetos de interfaz cargados pasaban de 8.600 a más de 16.000 y se quedaban ahí; ahora vuelven al valor de arranque al cerrar.
  • La barra de acciones tenía un problema aparte: los íconos de buffs y cooldowns que dejaban de usarse se quedaban en pantalla ocultos en vez de retirarse, y el motor los seguía dibujando. Corregido en los tres casos.

Este cambio estará disponible en el próximo changelog-update

‹ Ver más de Anuncios