Técnica de movimiento por coincidencia mediante IA

Técnica de movimiento por coincidencia mediante IA. Ubisoft explica la técnica de coincidencia de movimiento impulsada por IA utilizada en Far Cry 6. La herramienta Choreograph ayuda a que los juegos de Ubisoft sean más inmersivos.

La compañía distribuidora y desarrolladora de videojuegos muestra el funcionamiento de su herramienta Choreograph. Cómo esta puede ayudar a crear animaciones más realistas en Far Cry 6 a través de una técnica de coincidencia de movimiento impulsada por IA.

La coincidencia de movimiento es una forma en que el sistema de animación selecciona y elige las mejores animaciones. Lo hace en función no solo de las variables de entrada; sino también de cómo los personajes están posicionados actualmente y cómo se espera que se animen a continuación, explica el programador del motor. Rafael San Pedro.

Esto hace que el resultado se vea más natural y produce transiciones más suaves que un sistema de combinación controlado por estado. Por ejemplo, cuando un personaje pasa de caminar a correr, un programador sólo necesita cambiar la velocidad solicitada; y el sistema de coincidencia de movimiento se da cuenta por sí mismo de que primero necesita una animación de caminar.

Luego una animación de aceleración y finalmente una animación de jogging, y cambia de uno a otro en el momento más apropiado. Según los desarrolladores, el sistema simplifica la toma de decisiones y los sistemas de combinación.

Técnica de movimiento por coincidencia mediante IA
Técnica de movimiento por coincidencia mediante IA

Choreograph captura el movimiento y el rendimiento

Un motor de coincidencia de movimiento comprende el movimiento creado por la captura de movimiento y la captura de rendimiento. Y le permite extraer secuencias interesantes y reutilizables que se pueden reordenar y unir en un patrón; que puede o no haber existido en el momento de la captura.

La captura de rendimiento es necesaria para proporcionar al juego su firma única en términos de cómo los personajes interactúan con el mundo. Comenta el director de desarrollo Olivier Pomarez. A medida que agrega más animaciones, los árboles de animación se vuelven muy grandes y complejos.

La coincidencia de movimiento ayuda a organizar y combinar todos esos datos para crear un movimiento continuo. Lo hace de una manera eficiente que no requiere que los actores tengan en cuenta cada uno de los miles potenciales, de diferentes movimientos.

En cuanto a la utilidad del enfoque para el desarrollo de juegos. Los especialistas dicen que Choreograph relaja algunas de las restricciones de los datos MOCAP y les da más variedad situacional. Más control sobre lo que se usa y lo que no. Selecciona secuencias de animación muy cortas, lo que hace que los datos sean más versátiles. Esto permite una mejor reactividad ante entradas impredecibles.

Se ha probado en Far Cry 6

Choreograph aún no se ha distribuido ampliamente, pero ya ha introducido algunas experiencias nuevas para los jugadores. Como un modo de cámara en tercera persona para Far Cry 6. Saint-Pierre cree que la herramienta ofrece animaciones más expresivas e inmersivas y libera tiempo humano para un resultado más pulido; así como potencia de procesamiento para otros sistemas.

La técnica de movimiento por coincidencia mediante IA de Choreograph puede estar basado en IA, pero aún necesita ayuda de otros humanos. Por ejemplo, necesitan definir qué tipo de movimiento quieren que coincida. Por lo que el código de juego, los datos de animación y Choreograph deben estar conectados para producir un buen resultado.

Ubisoft no es el único estudio que trabaja en algo así. Saint-Pierre cree que la investigación presentada por el equipo en GDC 2016 ha inspirado a otros desarrolladores de juegos. Incluido EA, que ha revelado estar trabajando en sus propios sistemas de animación.

La coincidencia de movimiento se ha probado en Far Cry 6
La coincidencia de movimiento se ha probado en Far Cry 6

¿Qué es exactamente la coincidencia de movimiento?

En nuestro sistema de animación tradicional, para que un personaje se mueva de una manera específica. Tendríamos un árbol de animación por un lado y un conjunto de variables de entrada, como la velocidad y la dirección, por el otro.

El árbol de animación hace referencia a una colección de archivos de animación, cada uno con un solo objetivo; un archivo para caminar en línea recta a baja velocidad, otro para trotar en línea recta; cada acción necesita un archivo único para dar cuenta del estilo de movimiento de un personaje.

Cuando el personaje cambia de caminar a trotar, por ejemplo, cambiamos la velocidad de entrada. Lo que hace que el árbol de animación seleccione la animación de trote y aplique varias técnicas de fusión; dando la apariencia de aumentar la velocidad sin cambiar inmediatamente a la nueva animación.

Esto significa utilizar una potencia de procesamiento y una memoria considerables para cada animación adicional que reproduzcamos y mezclemos, lo que puede resultar costoso.

Qué es exactamente la coincidencia de movimiento
Qué es exactamente la coincidencia de movimiento

La IA (inteligencia artificial) selecciona las mejores animaciones

La coincidencia de movimiento es una forma en que el sistema de animación selecciona y elige las mejores animaciones. Lo hace para reproducir en función no solo de las variables de entrada, sino también de cómo los personajes están posicionados actualmente; y cómo se espera que se animen a continuación.

Es como el editor de una película, eligiendo las mejores tomas y juntándolas todas, y creando transiciones limpias entre los cortes para que sean invisibles. El resultado se ve más natural y produce transiciones más suaves que un sistema de mezcla puramente controlado por estado.

Cuando ese mismo personaje pasa de caminar a trotar, todo lo que hacemos es cambiar la velocidad solicitada. Y el sistema de coincidencia de movimiento se da cuenta por sí mismo de que primero necesita una animación de caminar, luego una animación de aceleración y finalmente una animación de trote. y cambia de uno a otro en el momento más adecuado.

La inteligencia artificial selecciona las mejores animaciones
La inteligencia artificial selecciona las mejores animaciones

¿Por qué utilizar la coincidencia de movimiento con MOCAP/PCAP?

MOCAP y PCAP son complementarios a la coincidencia de movimiento de la misma manera que lo son con otros sistemas de animación. Se utilizan para crear conjuntos dirigidos de datos de animación naturales y orgánicos en una variedad de situaciones que necesitará el juego.

Una vez obtenidos, esos datos aún deben seleccionarse en tiempo de ejecución para que coincidan con la intención de los personajes animados. A veces de formas que no se han capturado, porque hay muchas formas de moverse. Siendo realistas, no podemos hacer que un actor las interprete todas.

Un motor de coincidencia de movimiento comprende el movimiento capturado de una manera que le permite extraer secuencias interesantes; y reutilizables que se pueden reordenar y unir en un patrón que puede haber existido o no en el momento de la captura.

La captura de movimiento es necesaria para darle al juego su firma única en términos de cómo los personajes interactúan con el mundo. Por ejemplo, puede compararlo con el Príncipe de Persia: Las arenas del Tiempo; y la firma única en los movimientos y animaciones que contribuyen a los recuerdos vívidos de las personas que lo han jugado.

A medida que agrega más animaciones, los árboles de animación se vuelven muy grandes y complejos. La coincidencia de movimiento ayuda a organizar y combinar todos esos datos para crear un movimiento perfecto de una manera eficiente; que no requiere que los actores tengan en cuenta cada uno de los miles de movimientos diferentes potenciales.

Por qué utilizar la coincidencia de movimiento con MOCAP
Por qué utilizar la coincidencia de movimiento con MOCAP

¿Cómo se ha desarrollado Choreograph?

Comenzamos el trabajo en Choreograph siguiendo los últimos desarrollos en la academia. Usamos el trabajo de nuestro colega Daniel Holden , que proponía revisar la coincidencia de movimiento aprovechando algunas fortalezas del aprendizaje automático. Como la memorización eficiente y la capacidad de generalizar.

A partir de ahí, nos enfocamos en varias preguntas que teníamos que resolver con la nueva herramienta. Como por ejemplo facilitar el etiquetado de los archivos de animación para que se puedan usar en el código; cómo convertir dinámicamente los archivos a un formato que se pueda usar en el juego; y cómo hacerlo todo de una manera que permita que el juego lo busque y lo use rápidamente para una combinación más fluida.

Uno de los límites para el enfoque de coincidencia de movimiento; es que la cantidad de memoria necesaria crece a medida que aumenta el número y la variedad de animaciones que desea agregar.

Aquí es donde el equipo introdujo el aprendizaje automático, con coincidencia de movimiento aprendida. La propuesta era introducir algún sistema que aprendiera los resultados de una consulta específica. Como pasar de una caminata a un trote, y al hacerlo, comprimir la cantidad de memoria requerida hasta 30 veces.

Esta parte se cubre extensamente en nuestros documentos sobre el tema. Aunque aún no se ha integrado en un juego, el enfoque está probado y podemos obtener una gran diversidad de contenido con una huella de memoria más pequeña; y más rápida usando un movimiento. enfoque basado en coincidencias.

Cómo se ha desarrollado Choreograph
Cómo se ha desarrollado Choreograph

¿Qué hace Choreograph para el desarrollo? ¿Cómo cambian las cosas?

En primer lugar, Choreograph devuelve algo de control a los animadores. Los datos de animación ahora se ven como un flujo continuo que es anotado por personas que saben qué partes son más relevantes para cada situación. Como etiquetar una determinada animación como caminar, otra como trote, otra como carrera, etc…

Esto relaja algunas de las restricciones de los datos MOCAP y significa que podemos obtener más variedad situacional; más control sobre lo que se usa y lo que no, y menos desperdicio.

A diferencia de nuestro sistema anterior que solo podía reproducir clips completos antes de cambiar a otro; selecciona secuencias de animación muy cortas, generalmente unos pocos cuadros, lo que hace que los datos que tenemos sean más versátiles.

Eso permite una mejor reactividad a la entrada impredecible, sin cosas como el retraso de entrada; o el personaje saltando de manera poco realista a una animación inesperada, o los animadores que tienen que recurrir a trucos para encubrirlo.

Dado que es independiente del motor, permite que nuestros equipos confíen en una comunidad más grande para obtener ayuda y buenas prácticas. Y significa que la carga de optimización y mantenimiento es menor, ya que se comparte con otros equipos de desarrollo.

Comparativa de animaciones
Comparativa de animaciones

¿Qué hace Choreograph por los jugadores? ¿Cuál es el efecto para ellos?

Solo hemos enviado los pasos iniciales de Choreograph, y aun así nos ayudó a presentar nuevas experiencias a los jugadores. Como un modo de cámara en tercera persona para Far Cry 6. En mi opinión, la oferta de Choreograph a los jugadores es doble.

Animaciones más expresivas e inmersivas en por un lado, junto con oportunidades para un mundo de juego más rico gracias a la capacidad de respuesta. El lenguaje de diseño y la suavidad que permite Choreograph.

Por otro lado, dado que es razonablemente frugal en términos de tiempo de producción y recursos de hardware del usuario final. Libera tiempo humano para obtener un resultado más pulido, así como potencia de procesamiento para otros sistemas.

Video demostrativo de la herramienta
Video demostrativo de la herramienta

Técnica de movimiento por coincidencia mediante IA que sigue necesitando de manos artísticas

Necesitamos humanos para definir exactamente qué tipo de movimiento queremos que coincida; qué está permitido y qué no en los diversos contextos de animación. Mencioné antes cómo es un poco como una película. Tienes a Choreograph como editor; datos de animación como los actores; programadores y escritores como guionistas; y animadores como directores.

Quiere que el guionista escriba un guión sensato; el director para decirles a los actores lo que se espera de ellos y darles un contexto relevante; los actores a dar su mejor interpretación; el editor para reconstruirlo todo de una manera agradable y creíble; y luego todos a trabajar juntos para que las cosas no se desvíen de esa intención.

Si bien el jugador y la jugabilidad determinan lo que hacen los personajes en pantalla; los artistas y programadores detrás de los comportamientos de los personajes aún deben determinar el estilo de animaciones que estamos buscando; y la cantidad de combinación de Choreograph para ofrecer el resultado deseado.

Por ejemplo, si bien el jugador puede ingresar una carrera hacia adelante; el personaje puede encontrarse con un elemento del escenario o con otro personaje, y debe ser redirigido para caminar a su alrededor.

Entonces, el código necesita trabajar con Choreograph para producir el resultado correcto. Al final, la magia y el arte solo ocurren una vez que el código del juego; los datos de animación y la coreografía están correctamente conectados.

Una inspiración para toda la industria

¿Es cierto que los equipos fuera de Ubisoft desarrollaron sus propios sistemas similares a Choreograph basándose en una charla reciente de GDC de miembros de su equipo? ¿Cómo se siente inspirar juegos en toda la industria?

Sí, estamos muy orgullosos de la investigación que realizó el equipo en La Forge y del esfuerzo adicional que pusieron para compartirla interna y externamente. Pero no somos los únicos que trabajamos en sistemas como este.

Por ejemplo, EA ha revelado y compartido con bastante generosidad en eventos anteriores de GDC sobre su propio progreso en los sistemas de animación. Esta es una industria en la que las personas se inspiran entre sí y, después de todo, crear juegos no se trata de destreza técnica. Se trata de crear recetas para experiencias increíbles para los jugadores, algo que todos podemos compartir.

Parece que el trabajo realizado sobre la coincidencia de movimiento en Ubisoft Toronto y Montreal, que se presentó en GDC 2016; ha despertado interés en la comunidad de desarrollo de juegos y ha llevado a los creadores de juegos a creer en esa técnica y mejorarla.

Los resultados de nuestros propios equipos y de otros que exploran técnicas similares también son fantásticos.

Técnica de movimiento por coincidencia mediante IA

Creo que dice mucho sobre la pasión que tiene la gente en nuestra industria; produciendo esa interesante combinación de competencia y colaboración en forma de intercambio de conocimientos.

Trabajar junto a los autores intelectuales que construyeron y fabricaron esos poderosos sistemas es inspirador; hacer que estas personas compartan sus descubrimientos es empoderador; y ver lo que otros han hecho basándose en ese conocimiento es realmente impresionante.

Choreograph es un proyecto ambicioso que traerá muchas cosas buenas a nuestros juegos. Su existencia y futuro prometedor son un testimonio de las habilidades y la dedicación mostradas por las personas detrás de los sistemas de animación y combinación de movimiento de Far Cry. Detrás de Choreograph y aquellos que alimentaron estos sistemas de una manera que nos permite sumergir a los jugadores tan profundamente en Yara.

Sé que nuestros equipos de investigación y desarrollo tienen muchos más trucos bajo la manga; y estoy bastante seguro de que la gente de toda la industria de los juegos también los tiene. No puedo esperar a ver el tipo de inmersión y estética que nos depara el futuro.

Saber más sobre Choreograph y otras técnicas de movimiento

Echa un vistazo a la entrevista en el sitio web de Ubisoft. Tienes más artículos sobre técnicas de movimiento aquí. En el foro puedes encontrar más información agrupada y los comentarios, sigue leyendo…