Actualmente estoy emprendiendo un proyecto bastante ambicioso. En resumen, es un juego de estrategia multijugador en tiempo real que tiene mecánica de bacterias.
Esencialmente, tengo dos jugadores remotos en el entorno, y pueden generar unidades similares a bacterias que se atacan entre sí y se multiplican, duplicándose hasta que se alcanza un límite de recursos. A menudo, esto genera más de 200 objetos de juego en la pantalla, cada uno con su propio estado y movimiento. Esto suena mal, pero la jugabilidad local contra un bot es realmente muy buena, y he logrado que sea bastante eficiente.
Sin embargo, el problema surge cuando intento conectar en red este juego. Ya he intentado seguir esta guía para implementar esta función: http://www.paladinstudios.com/2013/07/10/how-to-create-an-online-multiplayer-game-with-unity/
Esto produce una experiencia de juego bastante lenta y desagradable, incluso con la mejor latencia. Esto es probablemente causado por tener que transmitir datos de movimiento para cientos de unidades.
La pregunta que estoy planteando:
¿Cómo puedo optimizar la conexión en red y la sincronización de muchas unidades móviles entre dos clientes?
Ya he pensado en una forma de hacer esto. Después de engendrar una unidad, solo viajarán en una dirección hasta que golpeen algo, ¿tal vez pueda sincronizar solo cuando las unidades se generan y cuando interactúan con otro objeto? ¿Tendría esto mucho beneficio? ¿Cuál es la forma ideal de implementar esto?
Gracias de antemano por las respuestas!