Hex Mask UI Icons Arrow Down Arrow Left Arrow Right Arrow Up Brackets Calendar Checkmark Chevron Down Chevron Left Chevron Right Chevron Up Clock Close Connect Copy crown download Ellipsis External URL Favorite (off) Favorite (on) Fullscreen Help Home Info Live Minus Mobile Menu Mobile Overflow Paginate Dot (filled) Paginate Dot (empty) Pin Placeholder Icon Play Video Circle Play Video Plus Search Team No-Team-Logo_Fallback_003 Ticket Trophy User Input Video Video Play Icon World X Game Mode Icons Hero Icons Map Icons Platform Icons Social Icons Mobile Discord Facebook Instagram Reddit Twitch Twitter VK Youtube Weibo WeChat Workshop Icons WorkshopControl WorkshopShare WorkshopInfinite

Entre bastidores con el equipo de ingeniería: Los estados del entorno en Overwatch 2

Entre bastidores con el equipo de ingeniería: Los estados del entorno en Overwatch 2

¡Hola a todos! Me llamo Marco Alamia y soy ingeniero de software en el equipo de Overwatch. Como hace poco terminamos de trabajar en un nuevo componente tecnológico para Overwatch 2, hemos pensado que sería un buen momento para contar a la comunidad lo que supone crear mejoras para el motor de un juego. Y para ayudarme en esta tarea, he solicitado la ayuda de dos desarrolladores del equipo de Overwatch: Bruce Wilkie y Fabien Christin.

La nueva tecnología que hemos incorporado al motor se llama «estados del entorno», y se ha convertido rápidamente en nuestro proceso de trabajo favorito para la creación y el diseño de mapas. Aunque la característica se desarrolla y perfecciona dentro del motor y las herramientas de Overwatch 2, la idea fundamental surge de la mente de Fabien, nuestro brillante artista de iluminación. Le he pedido que nos ayude a entender cómo se le ocurrió la idea que ha transformado la manera en que el equipo crea mapas y que nos guíe a través del proceso de diseño.

¡Hablemos de los estados del entorno!


Presentación de la idea

Fabien: Overwatch está ambientado en un mundo deslumbrante y lleno de color, y buena parte del carácter del juego se expresa a través de sus mapas. La creación de un mapa comienza con los diseñadores de niveles, que conciben toda la arquitectura del escenario con grandes cajas grises a fin de hacer interesante y equilibrada la jugabilidad. ¡Lo más importante de esta fase es diseñar un mapa que sea divertido! Después de muchas horas de pruebas, el turno pasa a los artistas de entorno, que transforman esas cajas grises en edificios y otros elementos, los cuales elaboran con esmero para insuflar de vida los lugares que recorrerán los jugadores. 

Además del entorno, creamos la iluminación que respalda la historia que cuenta el mapa. Para Overwatch 2, queríamos concebir ambientes nuevos e interesantes que cambiaran por completo la sensación de un lugar. Imaginad viajar a Numbani y ver la ciudad futurista iluminada por un cálido atardecer africano; o aterrizar en un París lluvioso, cuyos comercios brillan con cálidas luces doradas e invitan a entrar para tomar un cruasán mientras amaina la lluvia.

Justo para esto se diseñaron los estados del entorno. Con este nuevo sistema, hemos conseguido separar los principales componentes de iluminación, sonido y efectos en recursos independientes que pueden combinarse como bloques de construcción para crear lo que llamamos escenarios del entorno. Podemos disponer de ellos en todos los mapas y podemos tener varios escenarios en cada mapa.

Tomemos como ejemplo el mapa de combate a muerte de Necrópolis. Seguro que habéis jugado en su escenario nocturno, que combina los tonos fríos y azules de la noche con el naranja fulgurante de las antorchas encendidas en los edificios.

Pero, supongamos que queremos experimentar con un escenario distinto y decidimos probar con los colores intensos y desérticos del Templo de Anubis, pues con el nuevo sistema de los estados del entorno, no tenemos más que coger el estado del entorno del Templo de Anubis y aplicarlo a la Necrópolis. 

¡Esto ya mola! Sin embargo, todavía podemos mejorarlo modificando la dirección del sol para crear sombras más llamativas. Para ello, creamos un nuevo estado del entorno que solo reemplazará la dirección del sol, y ponemos este nuevo «bloque» sobre el del Templo de Anubis. 

¡Listo!

Gracias a la flexibilidad y sencillez de los estados del entorno, en pocas horas podemos crear prototipos de iluminación para los mapas. La posibilidad de realizar pruebas así de rápido nos permite experimentar más, ser más creativos y ofrecer más variedad a nuestros mapas.

Y eso no es todo. Aunque los ejemplos anteriores son sobre todo estéticos, los estados del entorno también pueden mezclarse de forma dinámica para desarrollar la jugabilidad. Imaginad que os envían a la Necrópolis para restablecer la conexión con un enlace satelital de Overwatch y, mientras repeléis un ataque de Null Sector, ¡una tormenta de arena se aproxima a vuestra posición y lanza por los aires todo lo que está a vuestro alrededor! Podemos hacer que la misión sea un poco más complicada colocando un nuevo estado del entorno con una tormenta de arena sobre el escenario soleado, de modo que vaya aumentando poco a poco la nubosidad y la densidad del efecto de la arena.

 

Con esta nueva tecnología, podemos crear todo tipo de cambios meteorológicos, como tormentas, nevadas y otros escenarios ambientales, para que el juego sea distinto cada vez que jugáis.

Volvamos con Marco y veamos el lado más técnico del funcionamiento de los estados del entorno.

Implementación de los estados del entorno

Marco: la visión de Fabien era ambiciosa, por lo que tuvimos que diseñar un sistema potente para obtener lo que necesitaba Overwatch 2 para sus entornos. Tras pensarlo mucho, decidimos permitir la presencia de varios estados del entorno al mismo tiempo, los cuales estarían ordenados en una pila. Esta pila podría cambiar de forma dinámica, de modo que se podría añadir o eliminar un estado del entorno en cualquier momento. La magia surge cuando el motor observa esta pila, mezcla todos los estados del entorno y elabora el aspecto final. Si alguna vez habéis usado Photoshop, es como tener varias capas mezcladas que lo que hacen es producir una imagen final.

La idea es que cada estado del entorno pueda describir algún aspecto del propio entorno, como la fuerza y la dirección del viento o el color del sol. Cuando el estado aparece en la pila, solo los aspectos proporcionados contribuyen al resultado. Por ejemplo, esta pila es de la discoteca de Lúcio en Río, en la que aparece un estado del entorno que cambia la exposición de la cámara y la gradación de color:

 

El estado del entorno que está debajo proporciona todos los aspectos del mapa y el que está arriba aplica la gradación de color para crear una atmósfera tenebrosa y amenazante en la zona de Diablo. Los estados del entorno se pueden añadir y eliminar de la pila durante la partida, lo que ofrece más dinamismo y consigue que los mapas sean más animados y enérgicos.

Aspectos

Bajo la dirección del equipo artístico y de Fabien, hemos identificado varios aspectos clave que queremos que los estados del entorno puedan definir. Por ejemplo, el posprocesado fue la primera característica del motor que convertimos en aspecto. El posprocesado es un elemento habitual en todos los motores modernos; sirve para aplicar distintos filtros y efectos, como el control del contraste, el brillo y la saturación de la imagen final. Ajustar el contraste y el brillo de la imagen de forma dinámica en función de lo que sucede en el juego puede hacer que la imagen final sea mucho más intensa y dinámica, y esto ahora es posible en Overwatch 2 gracias a la tecnología de los estados del entorno.

El aspecto de la niebla es otra herramienta potente de nuestro nuevo sistema. Al cambiar sus parámetros, podemos modificar la percepción de la niebla, lo que a su vez permite al equipo artístico hacer que el entorno evolucione visualmente en función del modo de juego, de las posiciones de los jugadores e incluso del tiempo. Por ejemplo, podemos darle al mapa un toque más espeluznante para Halloween, que la niebla se vuelva más densa solo en una parte del mapa o que una tormenta de arena vaya ganando fuerza a lo largo de una de las nuevas misiones heroicas.

Tenemos varios aspectos que modifican otras propiedades visuales, como las sombras que proyectan las nubes en el mapa, y hasta propiedades no visuales, como la fuerza y la dirección del viento. Dos de los aspectos más importantes que podemos cambiar son el del sol y el del cielo. Como sus propios nombres indican, estos nos permiten retocar características fundamentales del entorno, como la posición y el color del sol, el tipo de nubes (si es que las hay) y si es de día o de noche. Como podéis imaginar, esta es una parte muy potente del sistema de estados del entorno porque nos permite cambiar la percepción del mapa de formas muy drásticas.

Estos dos aspectos (el del sol y el del cielo) aprovechan una de las partes más avanzadas del motor: el sistema de iluminación. La iluminación es de suma importancia para Overwatch 2 porque nos ayuda a crear el ambiente de los entornos. Sin embargo, cualquier cambio en este sistema puede afectar a la memoria y el rendimiento, por lo que debemos tener mucho cuidado con lo que hacemos. Por suerte, contamos con un gran ingeniero en el equipo, Bruce Wilkie, que tiene mucha experiencia con los sistemas de iluminación y puede ayudarnos a crear algo estupendo a la vez que mantiene el rendimiento al gran nivel que exige un shooter competitivo como Overwatch 2.

Iluminación

Bruce: los vibrantes y coloridos gráficos de Overwatch requieren mucho trabajo y dedicación. Cada vez que juego una partida en uno de nuestros hermosos mapas, me acuerdo de la atención que se presta a cada entorno de iluminación. La luz del sol rebota en habitaciones, los focos iluminan ruinas y los festivales nocturnos cobran vida con tanto color. Estos son solo unos ejemplos de cómo la iluminación desempeña un papel tan importante en la percepción del juego. Cuando creamos el motor de Overwatch, colaboramos estrechamente con el equipo artístico con el fin de proporcionar las características de iluminación necesarias para llevar las ilustraciones en 2D al mundo en 3D, como la luz que rebota en superficies (que suele recibir el nombre de iluminación global), metales que reflejan el mundo que los rodea y objetos en movimiento que se iluminan a la perfección en entornos estáticos. Estas características requieren muchos cálculos, que a menudo son más intensos para la CPU de lo que se puede hacer con la frecuencia de fotogramas que queríamos alcanzar con el motor. Para que Overwatch pueda funcionar con una alta frecuencia de fotogramas y aplicar estas características avanzadas de iluminación, calculamos con antelación toda la información de iluminación que podemos, empaquetamos el resultado y usamos esos datos en el cliente. 

Echemos un vistazo a los datos que usamos en Overwatch que hacen posible algunas de estas características de iluminación. Para los elementos fijos, como paredes, suelos y techos, tenemos distintos conjuntos de datos. El primero le indica al motor la cantidad de luz que incide sobre una superficie y la dirección de la que procede. Normalmente, este conjunto de datos se llama lightmap, y distintos motores almacenan distintos tipos de datos en lightmaps.  

 

En esta imagen, se puede ver un ejemplo de cómo se generan los lightmaps para las superficies en un mapa. A la izquierda, está la composición final de toda la iluminación. En el centro, solo está renderizado el grafismo en las superficies. Nuestros artistas emplean este punto de vista a fin de procurar que se almacenan suficientes datos de iluminación para que la superficie logre el resultado visual deseado. A la derecha, se ve un ejemplo de cómo el motor empaqueta estos lightmaps para minimizar la memoria que ocupan.

Cuando lanzamos Overwatch, generamos el color y la dirección de todas las luces que incidían sobre una superficie. Utilizamos los datos de dirección para modificar el color en superficies irregulares: cuanto más orientada está la superficie en esa dirección, más color recibe. Para Overwatch 2, ahora generamos tres direcciones de iluminación, lo que nos permite modificar cada uno de los canales de color (rojo, verde y azul) de forma independiente. El resultado de las direcciones adicionales acentúa la intensidad de la iluminación ambiental, que a su vez aumenta la calidad de la imagen.

En el caso de los objetos fijos, generamos datos que indican al objeto qué parte del entorno es visible. Normalmente, estos datos reciben el nombre de oclusión ambiental. Empezamos a generar estos datos en varios mapas después del lanzamiento de Overwatch, como el de París y el de La Habana. En Overwatch 2, todos los mapas generarán estos datos, lo que aumentará la calidad de los gráficos. 

 

 

En cuanto a los objetos que sí se mueven, como los personajes, generamos muchas posiciones de prueba en el mundo y codificamos los datos de iluminación de cada una de ellas; el mismo tipo de datos que tenemos para los objetos fijos. Cuando un objeto en movimiento se acerca a uno de estos puntos, emplea esos datos para iluminarse. En Overwatch 2, estamos generando muchas más posiciones de prueba, sobre todo en el aire, de modo que los objetos en movimiento tendrán mejor aspecto que nunca.  

 

Si visteis nuestra mesa redonda en la BlizzConline, sabréis que los mapas disponen de distintos entornos de iluminación. Para cada entorno, queremos compartir la mayor cantidad de datos posible para que el tamaño de la descarga y la instalación sea razonable. La tecnología de los estados del entorno permite al motor agrupar múltiples entornos de iluminación en un mapa, lo que posibilita que una gran parte de los datos precalculados mencionados anteriormente se compartan entre esos entornos de iluminación agrupados. Esto reduce considerablemente las huellas de datos, por lo que los jugadores no tendrán que descargar e instalar tantos datos con cada variación. Iluminación de mayor calidad, más variedad de iluminación y menos datos, todo ello gracias a los estados del entorno.


Gracias a los estados de entorno, Overwatch 2 será más dinámico y mejorará el proceso de trabajo de nuestros artistas, de modo que les permitirán crear un mundo lleno de color para vuestro disfrute. ¡Preparaos para embarcaros en aventuras absorbentes por todo el mundo con entornos cambiantes y gráficos espectaculares en Overwatch 2!

0 comentarios