Buzz Lightyear, Shrek y todos tus dibujos favoritos son fruto de las temidas matemáticas

Cualquier dibujo animado cobra vida a base de operaciones matemáticas como aquellas que aprendiste en el instituto, que posiblemente odiabas y que tal vez ya cogen polvo en tu baúl de los recuerdos particular. Aunque no te lo creas, es cierto. Pero no solo el personaje, también cómo se mueve. Todo el proceso a través del cual se genera, se anima y aparece en pantalla es un compendio de escenarios matemáticos posibles gracias a la tecnología.

De hecho, el principal 'software' que se utiliza para hacer películas de animación tiene una base matemática “fundamental”. En el mundo 3D este hecho se hace más intenso, puesto que se trabaja con anchura, altura y volumen. Esto es: geometría proyectiva, que permite que una figura en 3D se proyecte sobre una pantalla plana en 2D. Así nos lo explica Ángel Pavón, encargado técnico de la vegetación y desarrollador de herramientas con Kandor Graphics para la película 'Justin y la espada del valor'.

¿Cómo se crea un personaje?

La elaboración de las diferentes partes del cuerpo de un personaje se basa en la geometría poligonal. Así, por ejemplo, un brazo parte de un cilindro, aunque mucho más complejo y formado por cientos de miles de caras. Ese cilindro está compuesto por ciertos puntos que es posible ir moviendo y moldear para que adquieran la forma más parecida a un brazo, una pierna u otra parte del cuerpo.

Por poner un ejemplo cercano: la nave de Chuck, el astronauta que llega a Planet 51, está construida a base de puntitos en el espacio, unidos por ejes. Esa unión de ejes, a su vez, crea caras. “Un mínimo de tres vértices dará lugar a una cara”, explica a HojaDeRouter.com Jorge Kirschner, modelador senior en Ilion Animation Studios que trabajó en dicha película.

“Puedo hacer surgir de la nada una esfera y moldearla a través de los controles que yo manejo, y que se corresponden con un eje X, Y o Z. Puedo darle grosor, duplicar su geometría, hacer que recoja mejor la luz… Los modeladores trabajamos con números, pero nosotros no hacemos de forma directa operaciones matemáticas”, añade.

Esqueleto animado

“A la geometría básica de cada personaje, hecha con polígonos, se le crea un esqueleto interno – compuesto de huesos, controladores y herramientas que acaban deformando esa geometría - con el objetivo de que los animadores trabajen con él”. Así nos lo cuenta Ricard Miras , técnico de personajes en Kandor Graphics que trabajó en la película 'Justin y la espada del valor'. “Como si en el interior de un muñeco de plastilina colocáramos hierros, bisagras o un esqueleto metálico para que esa plastilina se mueva”.

Cómo generar músculos

Precisamente, uno de los personajes de la película 'Justin y la espada del valor' fue complicado de diseñar debido a su musculatura. Se trata de Sir Antoine – doblado por Antonio Banderas. En Kandor Graphics no podían crear un sistema de simulación de músculos, por cuestiones de tiempo y presupuesto, así que consiguieron salir del apuro mediante un sencillo sistema de cálculo vectorial.

Con este truco conseguían detectar cuándo una parte del cuerpo del personaje entraba en contacto con ciertas zonas que obligaban, por naturaleza, a activar un músculo. Ese músculo, en este caso, se lograba generar mediante una especie de “modelado correctivo”. Para que pareciera que un brazo, por ejemplo, se hinchaba o desinflaba.

¿Cómo cambiamos la posición del cuerpo de un personaje?

Una de los conceptos matemáticos más utilizados en animación de dibujos es la matriz, que se emplea, sobre todo, para calcular la posición en el espacio de varios puntos y la relación entre ellos.

Si yo quiero saber en qué posición está el brazo de un personaje con respecto a su antebrazo, lo que hago es multiplicar por la inversa. ¿El qué? La matriz de la mano por la matriz del antebrazo. Para que te sea más fácil de comprender: si estás corriendo una maratón de 40 kilómetros y vas por el kilómetro 30, te faltan 10 para llegar (la resta que se hace en esta ocasión corresponde a “multiplicar por la inversa” del ejemplo primero, pero, en lugar de utilizar números simples, se utilizan matrices). “Hay matrices por todos lados en los programas 3D”, afirma Pavón.

¿Cómo movemos a ese personaje?

“Mediante interpolación”, explica. ¿Y esto qué significa? Que se usan curvas – que el animador mueve y moldea y con las que controla la velocidad y el espacio - que van adivinando cuál será el próximo movimiento. Si, por ejemplo, queremos hacer que un personaje salte, lo que hará el animador será colocarle en una posición normal y mover un poco el tiempo. Entonces lo colocará agachado y volverá a avanzar la línea temporal. Después lo colocará más arriba, en el aire. Volverá a mover el tiempo hacia delante y lo dejará en una posición de caída. Todos los puntos intermedios se calcularán a partir de esos fotogramas clave.

Piensa en varias posiciones a diferentes distancias, como si hicieras cuatro fotografías que representen el movimiento completo que se quiere realizar. Esos serán los puntos sobre los que trabajará el diseñador. Por su parte, el ordenador intuirá que “si al principio del movimiento el personaje estaba sentado y a mitad de movimiento está en el aire, por el medio tiene que ir poco a poco subiendo, y eso dependerá de esas curvas”.

El pelo de los personajes también se anima de esta forma. Ángel Pavón explica que el personaje Justin tiene una serie de – escasas - curvas guía que definen cómo tiene que ponerse cada pelo. A partir de esas curvas se genera otra a mitad de la cabeza y otra a un lado, “y yo hago que me genere nuevas y parecidas curvas a partir de las primeras”. Con estadística y distribuciones se consigue ruido para que cada pelo – a pesar de ser una copia de otro - parezca diferente y el cabello cobre cierta vida.

Angel Pavon pipeline reel at Kandor Graphics from Angel Pavon on Vimeo.

Efectos especiales: lo más técnico y matemático

Nicholas Schlesinger, 'pipeline coordinator' – técnico que gestionaba los flujos de trabajo - en Ilion Animation Studios para Planet 51, explica a HojaDeRouter.com que el departamento de efectos especiales, que trabaja con simulaciones, “es el más técnico y matemático”. Esto es así porque están manejando continuamente fórmulas para crear fuegos, explosiones, humos…“ Y cuando sale una nueva fórmula para simular cualquier efecto, la comprueban. Necesitan entender las matemáticas que están usando”.

La fase de iluminación y composición, “donde se junta todo lo que has hecho, se añade luz y se procesa toda la información”, pasa por un trabajo puramente matemático llamado ‘rendering’. Se trata de una ecuación matemática, procesada por un potente motor de 'render', que calcula cómo rebotan miles de rayos sobre la imagen y genera el resultado final.

Para que te hagas una idea, Nicholas explica que en el caso de la película de Disney 'Frozen' hay ciertos fotogramas que tardan hasta 120 horas en procesar – y en una película pueden haber hasta 130.000 fotogramas. Durante el tiempo que tardan en procesarse todos ellos, el motor está continuamente calculando.

Arnold, el motor de render español

Precisamente es una empresa española la que destaca en cuanto a ‘rendering’ de películas en 3D. Se trata de Solid Angle y su motor de render ‘Arnold’, que “se ha convertido en un estándar de la producción audiovisual de animación”, asegura Ricard. Ha sido utilizado en muchas películas, como 'Gravity', y “su principal competidor es Pixar”. En 'Justin y la espada del valor' también trabajaron con ‘Arnold’.

Por otro lado, el tipo de material que se le aplica a cada objeto con color (si es brillante, reflectante, absorbe la luz, si parece piel…) también depende de las matemáticas. Es algo programado. Decimos, por ejemplo, que cuando un rayo de luz entra en contacto con un objeto y tenemos un determinado índice de refracción, de absorción y de reflexión, se puede generar un material determinado – cualquiera de la vida real - y simularlo en 3D.

El sistema de animación que lo revolucionó todo gracias a un principio matemático[/do]

“El sistema de animación que lo revolucionó todo fue el IK FK (kinemática inversa)”, explica Ricard Miras. Está basado en la ley del coseno. La mítica 'Toy Story' se animó con kinemática directa, lo que significa que el animador solo podía mover objetos uno tras otro: tenía que rotar primero el húmero, después el antebrazo, luego la mano y finalmente los dedos.

En Jurassic Park, un equipo de I+D inventó la kinemática inversa, que calcula las matrices y rotaciones de objetos a través de posiciones. “Significa que yo muevo la mano y, consecuentemente, el brazo se dobla; no flexiono el antebrazo, sino que el brazo sigue la mano cuando la muevo en el espacio”, explica Miras.

Además, permite hacer cosas como dejar el pie firme sobre el suelo y mover las piernas. Después, simplemente es necesario “aplicar controles para doblar las extremidades del personaje, generar la pose, y hacer lo necesario para que comience a andar y avance”, explica a HojaDeRouter.com Guillaume Babin, 'character tecnical director' de Ilion Animation Studios en Planet 51.

“La ley del coseno solucionó un gran problema”

Este sistema de animación se basa en la ley del coseno (trigonometría básica), lo que supuso una revolución. Para que lo entiendas: Woody y su amigo Buzz Lightyear vuelan por el cielo de Toy Story impulsados por un cohete. Y lo hacen describiendo parábolas mientras se dirigen hacia el infinito y más allá. Cuando tocan suelo, sus pies tiemblan continuamente. Los dinosaurios de 'Jurassic Park', por su parte, pisan en firme, decididos, clavando las patas en el suelo.

¿Y por qué en 'Toy Story' los pies de los personajes tiemblan cuando están sobre el suelo? Porque sus creadores no tenían forma de anclar un objeto sobre el terreno en una posición global. Todavía no se había inventado la kinemática inversa. “Desde entonces esta tecnología se usa día tras día”, afirma Miras. “Si a un animador de hoy le das un personaje sin kinemática inversa, te dirá que no sabe trabajar con eso”.

De Nurbs a polígonos

Otra gran revolución en este ámbito viene marcada por el oscarizado corto 'El juego de Geri' (Pixar). Con él se pasó de utilizar ‘curvas de Nurbs’ a usar polígonos. Vamos a explicarlo.

En 'Toy Story', por ejemplo, no tenían posibilidad de utilizar polígonos en los personajes, así que se hicieron con Nurbs, unas curvas matemáticas que permitían modelar, pero de forma muy compleja. Por eso en la película había ciertas formas que no podían ser modeladas. La solución la encontró la propia Pixar, que desarrolló la subdivisión de polígonos.

Esto implica que ahora los polígonos se pueden subdividir, generando cientos de miles de polígonos más que el animador puede trabajar para que los objetos y personajes se vean más suaves en pantalla. “Tú generas una geometría de 10.000 polígonos, por ejemplo, y el sistema te crea muchos más. La superficie que se genera es muy suave”, explica Miras. El objeto o la parte del cuerpo ya no son tan puntiagudos como antes y proyecta una imagen más real: todo un avance tecnológico.

Operaciones matemáticas de escuela

Como explica Ángel Pavón a HojaDeRouter.com, en el ámbito de la animación se utilizan operaciones muy elementales – casi a nivel de escuela. Entre ellas, la conocida función del resto (5 entre 2 es igual a 2 y me llevo 1). “Es una operación matemática que, cuando le das un sentido geométrico y visual, se utiliza para todo, continuamente. Por ejemplo, para que uno de cada tres pelos de un personaje esté un poco despeinado y tenga efecto”.

Otro ejemplo de operación sencilla: algo que se utiliza para ahorrar cálculos y que estos sean más rápidos es la propiedad distributiva de los números. Cuando es necesario hacer una operación millones de veces, utilizando esta propiedad se consigue reducir el tiempo y aumentar el rendimiento del ordenador.

“No estamos hablando, como vemos, de matemáticas hipercomplicadas”, explica Pavón. Aunque, a día de hoy, se están comenzando a utilizar operaciones más complejas, como pueden ser las ecuaciones diferenciales para generar nieve. Aquí puedes ver cómo utiliza Pixar las matemáticas:

Simplicidad, rapidez, efectividad

Al fin y al cabo, cuanto más fácil de calcular sea una fórmula, más rápido y cómodo trabajará el animador. No hay que olvidar que cada uno de ellos maneja en una misma escena hasta 100 personajes, además de todos los elementos del escenario. Es muchísima información, por lo que hacer cálculos complejos ralentiza el ordenador y complica la tarea al humano.

Por otro lado, es evidente que trabajar con matrices, trigonometría o matemática de vectores no significa que los animadores o modeladores dediquen su tiempo a resolver problemas o ecuaciones. Hay toda una compleja técnica informática detrás que se pone a los pies del arte. Si el artista quiere conseguir algo, los técnicos han de ayudarle, “porque el arte tiene que entrar por los ojos, no por la mente”, determina Pavón.

Tal vez la animación, que utiliza unas matemáticas tan sencillas, ayudaría a simplificar el proceso de aprendizaje en los colegios, como Pavón sugiere. “Es cierto que es una ciencia abstracta, pero viene del mundo real, no es algo tremendamente imaginario”. Así que explicarla utilizando ejemplos reales - o de dibujos - sería provechoso. “Ya hay intentos de empezar a enseñar la materia de esta manera, pero es una pena cómo se está haciendo hasta el momento”.