22 puntos por scalalang2 2024-02-25 | 2 comentarios | Compartir por WhatsApp

Un artículo que resume el paper "A Survey and Taxonomy of Latency Compensation Techniques for Network Computer Games", publicado en 2022 en ACM Computing Surveys.

Compensación de latencia
La acción de ajustar la entrada del usuario o los valores de estado del juego para reducir la experiencia negativa causada por la latencia.

Las áreas donde se puede aplicar la compensación de latencia se clasifican en cuatro grandes categorías: retroalimentación, predicción, manipulación del tiempo y ajuste del mundo. Dentro de cada una, se presentan además las técnicas que solo pueden aplicarse en el cliente, solo en el servidor, o en ambos.

  • Retroalimentación: método para evitar que se perciba la latencia usando información visual y sonora sin modificar el estado real del juego
  • Predicción: en el modelo con servidor autoritativo, el servidor valida las acciones del jugador y reporta al cliente el resultado renderizado. La predicción consiste en que el cliente anticipe el resultado y lo renderice primero antes de recibir la respuesta del servidor, para luego corregirlo cuando llegue el resultado real
  • Manipulación del tiempo: método que evalúa el juego retrocediendo el tiempo del mundo del juego. Mientras que las técnicas de predicción vistas en la sección anterior mejoran la capacidad de respuesta, la manipulación del tiempo sacrifica un poco esa capacidad para aumentar la consistencia
  • Ajuste del mundo: por lo general, cuando la latencia es baja, la dificultad del juego aumenta y la experiencia de juego se ve afectada; esta categoría ofrece métodos para compensarlo parcialmente

2 comentarios

 
edunga1 2024-02-28

Me gustó porque pude entender con detalle, y con fundamentos, cosas que mientras jugaba solo comprendía de manera superficial. Lo leí con mucho interés.

¡Se siente como explorar el micromundo del software!
¿Será que este tipo de técnicas también las ofrecen los motores de juego?

 
scalalang2 2024-03-18

Sí, normalmente si usas un servidor dedicado de Unreal Engine, te lo proporciona por defecto.