Juegos en la nube una de las principales tecnologías a las que hay que prestar atención ahora mismo. En 6 años, este mercado debería crecer diez veces, pasando de 45 millones de dólares en 2018 a 450 millones de dólares en 2024. Los gigantes tecnológicos ya están entrando en este nicho: Google y Nvidia han lanzado versiones beta de sus servicios de juegos en la nube, y Microsoft, EA, Ubisoft, Amazon y Verizon están preparándose para unirse.
Para los gamers, esto significa que pronto podrán dejar de gastar dinero en actualizar hardware y ejecutar juegos potentes en computadoras de bajo rendimiento. ¿Es beneficioso esto para los demás actores del ecosistema? Te contamos por qué los juegos en la nube aumentarán sus ingresos y cómo creamos la tecnología que permite ingresar fácilmente a este mercado en crecimiento.

Editores, desarrolladores, fabricantes de TVs y operadores de telecomunicaciones: ¿por qué todos ellos están interesados en los juegos en la nube?
Los editores y desarrolladores de juegos están interesados en entregar su producto lo más rápido posible al mayor número de jugadores. Actualmente, según nuestros datos, el 70% de los potenciales compradores no llegan a jugar: no esperan la carga del cliente y del archivo de instalación que pesa decenas de gigabytes. Además, el 60% de los usuarios, , en principio, no pueden ejecutar juegos potentes (de nivel AAA) en sus computadoras con una calidad aceptable. Los juegos en la nube pueden resolver este problema: no solo no reducirán los ingresos de los editores y desarrolladores, sino que también les ayudarán a aumentar su audiencia de pago.
Los fabricantes de TVs y dispositivos de TV también están apostando por los juegos en la nube. En la era de los hogares inteligentes y los asistentes de voz, tienen que competir cada vez más por la atención del usuario, y la funcionalidad de juego es la principal forma de atraer esa atención. Con juegos en la nube integrados, sus clientes podrán jugar juegos modernos directamente en el televisor, pagando por el servicio al fabricante.

Otro participante potencialmente activo en el ecosistema son los operadores de telecomunicaciones. Su forma de aumentar sus ingresos es ofreciendo servicios adicionales. El gaming es uno de esos servicios que los operadores ya están implementando activamente. Rostelecom ha lanzado la tarifa «Gaming», Akado vende acceso a nuestro servicio Playkey. Esto no solo se refiere a los operadores de internet de banda ancha. Los operadores móviles, debido a la rápida expansión del 5G, también podrán hacer del gaming en la nube una fuente adicional de ingresos.
A pesar de las perspectivas positivas, ingresar al mercado no es tan sencillo. A todos los servicios existentes, incluidos los productos de gigantes tecnológicos, aún no les ha sido posible superar completamente el problema de la «última milla». Esto significa que, debido a las imperfecciones de la red en la propia casa o departamento, la velocidad de internet del usuario no es suficiente para el correcto funcionamiento del gaming en la nube.

Observe cómo se atenúa la señal de WiFi a medida que se dispersa desde el router por el apartamento.
Los jugadores que llevan tiempo en el mercado y cuentan con poderosos recursos están avanzando gradualmente hacia la solución de este problema. Pero lanzar sus propios juegos en la nube desde cero en 2019 implica gastar mucho dinero, tiempo y, posiblemente, no lograr crear una solución efectiva. Para ayudar a todos los participantes del ecosistema a desarrollarse en un mercado en rápida expansión, hemos desarrollado una tecnología que permite lanzar su servicio de gaming en la nube de manera rápida y sin altos costos.
Cómo hemos desarrollado la tecnología que permitirá lanzar fácilmente su servicio de gaming en la nube.
Nuestra tecnología de gaming en la nube, Playkey, comenzó a desarrollarse en 2012. En 2014 se realizó el lanzamiento comercial, y para 2016, 2.5 millones de jugadores habían utilizado el servicio al menos una vez. A lo largo de todo el desarrollo, vimos interés no solo por parte de los gamers, sino también por parte de los fabricantes de set-top boxes y operadores de telecomunicaciones. Con NetByNet y «Er-Telecom» incluso lanzamos varios proyectos piloto. En 2018 decidimos que nuestro producto podría tener un futuro B2B.
Desarrollar una variante de integración en la nube para cada empresa, como hicimos en los proyectos piloto, es problemático. Cada implementación de este tipo tomaba entre tres meses y medio año. ¿Por qué? Todos tienen diferentes equipos y sistemas operativos: a algunos les interesa el juego en la nube en consolas Android, mientras que otros lo requieren como un iFrame en la interfaz web del panel de usuario para hacer streaming en computadoras. Además, todos tienen diferentes diseños, sistemas de facturación (¡un mundo aparte!) y otras particularidades. Así que quedó claro que era necesario o aumentar el equipo de desarrollo diez veces, o crear una solución B2B de caja lo más universal posible.
En marzo de 2019 lanzamos . Este es un software que las empresas pueden instalar en sus servidores y obtener un servicio de juego en la nube funcional. ¿Cómo será para el usuario? Verá un botón en su sitio familiar que le permitirá iniciar el juego en la nube. Al pulsar este botón, el juego se ejecutará en el servidor de la empresa, y el usuario verá el streaming y podrá jugar de forma remota. Así es como podría verse en populares servicios de distribución digital de juegos.


Una lucha activa por la calidad. Y también una pasiva.
Ahora vamos a contar cómo Remote Click enfrenta las numerosas barreras técnicas. El juego en la nube de primera generación (por ejemplo, OnLive) fue arruinado por la baja calidad de internet de los usuarios. En 2010, la velocidad media de conexión a Internet en EE. UU. solo 4,7 Mb/s. Para 2017, ya había aumentado a 18,7 Mb/s, y pronto aparecerá 5G en todas partes, marcando el inicio de una nueva era. Sin embargo, a pesar de que la infraestructura está en general lista para el juego en la nube, persiste el ya mencionado problema de la "última milla".
Una de sus caras, que llamamos objetiva: el usuario realmente tiene problemas con la red. Por ejemplo, el operador no ofrece la velocidad máxima prometida. O se está utilizando WiFi de 2,4 GHz, interferido por un microondas y un ratón inalámbrico.
El otro lado, que llamamos subjetivo: el usuario ni siquiera sospecha que tiene problemas con la red (¡no sabe que no sabe)! En el mejor de los casos, está seguro de que como el operador le vende un plan de 100 Mbit/s, tiene internet de 100 Mbit/s. En el peor de los casos, no tiene idea de qué es un router y divides el internet en azul y en color. Un caso real de customer care.

Internet azul y colorido.
Pero ambas partes del problema de la 'última milla' son solucionables. En Remote Click utilizamos mecanismos activos y pasivos para ello. A continuación, una descripción detallada de cómo enfrentan los obstáculos.
Mecanismos activos
1. Codificación de datos transmitidos resistente a interferencias, también conocida como redundancia (FEC - Forward Error Correction)
Al transmitir datos de video desde el servidor al cliente, se utiliza codificación resistente a interferencias. Con ella, recuperamos los datos originales en caso de pérdida parcial debido a problemas en la red. ¿Qué hace que nuestra solución sea efectiva?
- Velocidad. La codificación y decodificación se realizan muy rápidamente. Incluso en computadoras 'débiles', la operación no toma más de 1 ms para 0.5 MB de datos. Así, la codificación y decodificación casi no añaden latencia al jugar en la nube. La importancia es difícil de sobreestimar.
- Máximo potencial de recuperación de datos. Es decir, la relación entre el volumen de datos redundantes y el volumen potencialmente recuperable. En nuestro caso, la relación = 1. Supongamos que necesitamos transmitir 1 MB de video. Si al codificar añadimos 300 KB de datos adicionales (esto se llama redundancia), entonces en el proceso de decodificación para recuperar 1 megabyte original solo necesitaremos 1 MB de los 1.3 MB totales enviados por el servidor. En otras palabras, podemos perder 300 KB y aún así recuperar los datos originales. Como se puede ver, 300 / 300 = 1. Esta es la máxima eficiencia posible.
- Flexibilidad en la configuración del volumen adicional de datos durante la codificación. Podemos ajustar el nivel de redundancia para cada fotograma que necesita ser transmitido por la red. Por ejemplo, al detectar problemas en la red, podemos aumentar o disminuir el nivel de redundancia.

Jugamos a Doom a través de Playkey en un Core i3, 4 GB de RAM, MSI GeForce GTX 750.
2. Reenvío de datos
Una forma alternativa de combatir las pérdidas es solicitar los datos nuevamente. Por ejemplo, si el servidor y el usuario están en Moscú, la latencia en la transmisión no superará los 5 ms. Con este valor, la aplicación del cliente puede solicitar y recibir la parte de datos perdida del servidor sin que el usuario lo note. Nuestro sistema decide automáticamente cuándo aplicar redundancia y cuándo un reenvío.
3. Configuración personalizada de la transmisión de datos
Para elegir la forma óptima de combatir las pérdidas, nuestro algoritmo analiza la conexión de red del usuario y configura el sistema de transmisión de datos de manera individual para cada caso.
Analiza:
- el tipo de conexión (Ethernet, WiFi, 3G, etc.);
- el rango de frecuencia utilizado por WiFi — 2.4 GHz o 5 GHz;
- la intensidad de la señal WiFi.
Si clasificamos las conexiones por pérdidas y latencia, la más confiable es, por supuesto, la conexión por cable. A través de Ethernet, las pérdidas son raras y las latencias en la 'última milla' son extremadamente improbables. Luego está WiFi 5 GHz y sólo después WiFi 2.4 GHz. Las conexiones móviles son un desastre, estamos esperando el 5G.

Al usar WiFi, el sistema ajusta automáticamente el adaptador del usuario, cambiándolo al modo más adecuado para su uso en la nube (por ejemplo, desactivando el ahorro de energía).
4. Configuración personalizada de codificación
La transmisión de video existe gracias a los códecs: programas de compresión y descompresión de datos de video. En su forma no comprimida, un segundo de video fácilmente supera los cientos de megabytes, y el códec reduce esta cantidad considerablemente. Disponemos de códecs H264 y H265.
H264 es el más popular. A nivel de hardware, todos los principales fabricantes de tarjetas gráficas lo han soportado durante más de una década. H265 es un audaz sucesor joven. Se comenzó a soportar a nivel de hardware hace unos cinco años. La codificación y decodificación en H265 requiere más recursos, pero la calidad de la imagen comprimida es significativamente mejor que en H264. ¡Y sin aumentar el tamaño!

¿Qué códec elegir y qué parámetros de codificación establecer para un usuario específico, según su 'hardware'? Es una tarea no trivial que se resuelve automáticamente en nuestro sistema. El sistema inteligente analiza las capacidades del hardware, establece los parámetros óptimos del codificador y selecciona el decodificador del lado del cliente.
5. Compensación de pérdidas
No queríamos admitirlo, pero incluso nosotros no somos perfectos. Algunos datos, perdidos en las profundidades de la red, no son recuperables y no tenemos tiempo para enviarlos. Pero incluso en este caso hay una salida.
Por ejemplo, el ajuste de la tasa de bits. Nuestro algoritmo controla constantemente el volumen de datos enviados del servidor al cliente. Registra cada pérdida y hasta predice posibles pérdidas futuras. Su tarea es notar a tiempo, y en ideal, predecir, cuándo las pérdidas alcanzarán un valor crítico y comenzarán a crear interferencias notables para el usuario en la pantalla. Y en ese momento, corregir el volumen de datos enviados (tasa de bits).

Además, utilizamos la invalidación de fotogramas no recolectados y un mecanismo de fotogramas de referencia en el flujo de video. Ambas herramientas reducen la cantidad de artefactos visibles. Es decir, incluso con serias interrupciones en la transmisión de datos, la imagen en la pantalla sigue siendo aceptable y el juego, jugable.
6. Envío distribuido
El envío de datos distribuido en el tiempo también mejora la calidad de la transmisión. Cómo distribuir depende de indicadores específicos en la red, como la existencia de pérdidas, el ping y otros factores. Nuestro algoritmo los analiza y elige la opción óptima. A veces, la distribución en un intervalo de milisegundos reduce las pérdidas drásticamente.
7. Reducción de la latencia
Una de las características clave al jugar en la nube es la latencia. Cuanto menor es, más cómodo es jugar. La latencia se puede dividir, en términos generales, en dos partes:
- latencia de red o latencia en la transmisión de datos;
- latencia del sistema (tomar el control del lado del cliente, capturar la imagen en el servidor, codificar la imagen, los mecanismos de adaptación de datos mencionados anteriormente para el envío, recolectar datos en el cliente, decodificar la imagen y renderizarla).
La latencia de red depende de la infraestructura y es problemático combatirla. Si los ratones royeron el cable, los rituales no ayudarán. Pero la latencia del sistema se puede reducir drásticamente y la calidad del juego en la nube para el jugador cambiará radicalmente. Además de la codificación resistente a interferencias y configuraciones personalizadas, utilizamos otros dos mecanismos.
- Recepción rápida de datos desde los dispositivos de control (teclado, ratón) en el lado del cliente. Incluso en computadoras débiles, esto solo requiere de 1 a 2 ms.
- Renderización del cursor del sistema en el cliente. El puntero del ratón se procesa no en el servidor remoto, sino en el cliente de Playkey en la computadora del usuario, es decir, sin ningún retraso. Sí, esto no afecta el control real en el juego, pero lo principal aquí es la percepción humana.

Renderización del cursor sin retraso en Playkey tomando como ejemplo Apex Legends
Con nuestra tecnología, con un retraso de red de 0 ms y trabajando con un flujo de video a 60 FPS, la latencia de todo el sistema no supera los 35 ms.
Mecanismos pasivos
Según nuestra experiencia, muchos usuarios tienen poca idea de cómo sus dispositivos se conectan a Internet. En entrevistas con jugadores, se descubrió que algunos no saben qué es un router. ¡Y eso está bien! No es necesario conocer el funcionamiento de un motor de combustión interna para conducir un automóvil. No se debe exigir a un usuario que tenga el conocimiento de un administrador del sistema para poder jugar.
Sin embargo, hay algunos aspectos técnicos que es importante comunicar para que el jugador pueda eliminar por sí mismo las barreras de su lado. Y nosotros le ayudamos.
1. Indicación de soporte para WiFi de 5 GHz
Como mencionamos anteriormente, vemos el estándar Wi-Fi: 5 GHz o 2.4 GHz. Y también sabemos si el adaptador de red del dispositivo del usuario admite la posibilidad de operar en 5 GHz. Y si es así, recomendamos usar este rango. No podemos cambiar la frecuencia por nuestra cuenta, ya que no vemos las especificaciones del router.
2. Indicación de la intensidad de la señal WiFi
Algunos usuarios pueden tener una señal WiFi débil, incluso si Internet funciona bien y parece estar a una velocidad aceptable. El problema se manifiesta especialmente en el juego en la nube, que somete la red a pruebas reales.
La intensidad de la señal se ve afectada por obstáculos, como paredes, y por interferencias de otros dispositivos. Los microondas, por ejemplo, emiten una señal considerable. Como resultado, se producen pérdidas que son imperceptibles durante la navegación por Internet, pero críticas para jugar en la nube. En tales casos, advertimos al usuario sobre interferencias, sugerimos que se acerquen al router y apaguen dispositivos "ruidosos".
3. Indicación de los consumidores de tráfico
Incluso si la red está en buen estado, otras aplicaciones pueden consumir demasiada banda ancha. Por ejemplo, si se está viendo un video en YouTube o se están descargando torrents mientras se juega en la nube. Nuestra aplicación detecta a los 'ladradores' y alerta al jugador sobre ellos.

Miedos del pasado — desmitificando mitos sobre el cloud gaming
Los juegos en la nube, como un nuevo modo de consumir contenido de videojuegos, han estado intentando entrar en el mercado durante casi diez años. Al igual que con cualquier innovación, su historia es una serie de pequeñas victorias y grandes fracasos. No es sorprendente que a lo largo de los años, el cloud gaming haya acumulado mitos y prejuicios. En los inicios de la tecnología, estos mitos estaban justificados, pero hoy en día son completamente infundados.
Mito 1. La imagen en la nube es peor que en la original — como si jugaras por YouTube
Hoy en día, en una solución de nube técnicamente avanzada, las imágenes de la original y de la nube son prácticamente idénticas — no se pueden encontrar diferencias a simple vista. La configuración personalizada del codificador para el equipo del jugador y un conjunto de mecanismos para combatir las pérdidas abordan este tema. En una red de calidad no hay ni desenfoque de fotogramas ni artefactos gráficos. Incluso tenemos en cuenta la resolución. No tiene sentido transmitir una imagen en 1080p si el jugador está usando 720p.
A continuación, dos videos de Apex Legends de nuestro canal. En un caso, es una grabación de juego en PC, en el otro — a través de Playkey.
Apex Legends en PC

Apex Legends en Playkey

Mito 2. Calidad inestable
El estado de la red es realmente variable, pero este problema ya ha sido resuelto. Cambiamos dinámicamente la configuración del codificador según la calidad de la red del usuario. Y mantenemos un nivel de FPS aceptable de manera constante mediante técnicas especiales de captura de imagen.
¿Cómo funciona esto? El juego tiene un motor 3D, mediante el cual se construye un mundo 3D. Pero al usuario se le muestra una imagen plana. Para que la vea, se crea una imagen de memoria para cada fotograma — una especie de fotografía que muestra cómo se ve este mundo 3D desde un punto específico. Esta imagen en formato codificado se almacena en un búfer de memoria de video. La capturamos de la memoria de video y se la pasamos al codificador, que la descifra. Y así con cada fotograma, uno tras otro.
Nuestra tecnología permite capturar y decodificar la imagen en un solo flujo, lo que aumenta los FPS. Si estos procesos se realizan en paralelo (una solución bastante popular en el mercado del gaming en la nube), el codificador estará constantemente accediendo a la captura, obteniendo nuevos fotogramas con retraso y, en consecuencia, transmitiéndolos con retraso.

El video en la parte superior de la pantalla se obtuvo utilizando la tecnología de captura y decodificación en un solo flujo.
Mito 3. Debido a los retrasos en el control, seré 'un estorbo' en el multijugador.
El retraso normal en el control es de unos pocos milisegundos. Generalmente, no es perceptible para el usuario final. Sin embargo, a veces se nota una pequeña desalineación entre el movimiento del ratón y el desplazamiento del cursor. Esto no afecta nada, pero crea una impresión negativa. La representación del cursor directamente en el dispositivo del usuario elimina esta desventaja. En el resto, el retraso general del sistema de 30 a 35 ms es tan pequeño que ni el jugador ni sus oponentes en la partida lo notan. El resultado de una batalla se decide únicamente por las habilidades. Prueba más abajo.
El streamer está dominando a través de Playkey.
¿Qué sigue?
El gaming en la nube ya es una realidad. Playkey, PlayStation Now, Shadow: son servicios operativos con su propia audiencia y lugar en el mercado. Y como muchos mercados jóvenes, el gaming en la nube crecerá rápidamente en los próximos años.
Uno de los escenarios que nos parece más probable es la aparición de servicios propios por parte de editores de juegos y operadores de telecomunicaciones. Algunos desarrollarán los suyos propios, otros utilizarán soluciones de caja ya disponibles, como RemoteClick.net. Cuantos más jugadores haya en el mercado, más rápido el consumo de contenido de juegos en la nube se convertirá en algo común.
Fuente: habr.com
