La animación esquelética o rigging es una técnica de animación por ordenador en la que un personaje (u otro objeto articulado) se representa en dos partes: una representación de malla poligonal o paramétrica de la superficie del objeto y un conjunto jerárquico de partes interconectadas (llamadas articulaciones o huesos, y que forman colectivamente el esqueleto), una armadura virtual utilizada para animar (pose y fotograma clave) la malla. [1] Si bien esta técnica se utiliza a menudo para animar humanos y otras figuras orgánicas, solo sirve para hacer que el proceso de animación sea más intuitivo, y la misma técnica se puede utilizar para controlar la deformación de cualquier objeto, como una puerta, una cuchara, un edificio o una galaxia. Cuando el objeto animado es más general que, por ejemplo, un personaje humanoide, el conjunto de "huesos" puede no ser jerárquico ni estar interconectado, sino que simplemente representa una descripción de nivel superior del movimiento de la parte de la malla que está influenciando.
La técnica fue introducida en 1988 por Nadia Magnenat Thalmann , Richard Laperrière y Daniel Thalmann . [2] Esta técnica se utiliza en prácticamente todos los sistemas de animación donde las interfaces de usuario simplificadas permiten a los animadores controlar algoritmos a menudo complejos y una gran cantidad de geometría; más notablemente a través de cinemática inversa y otras técnicas "orientadas a objetivos".
Como se describe en un artículo instructivo de Josh Petty: [3]
El proceso de rigging consiste en hacer que nuestros personajes puedan moverse. El proceso de rigging consiste en tomar esa escultura digital y comenzar a construir el esqueleto, los músculos, y unir la piel al personaje. También creamos un conjunto de controles de animación que nuestros animadores utilizan para empujar y tirar del cuerpo.
Esta técnica construye una serie de huesos (que no necesitan corresponderse con ninguna característica anatómica del mundo real), a veces también denominada rigging en el sentido nominal. Cada hueso tiene una transformación tridimensional a partir de la pose de enlace predeterminada (que incluye su posición, escala y orientación) y un hueso padre opcional. Por lo tanto, los huesos forman una jerarquía . La transformación completa de un nodo secundario es el producto de su transformación padre y su propia transformación. Por lo tanto, mover un fémur también moverá la parte inferior de la pierna. A medida que se anima el personaje, los huesos cambian su transformación con el tiempo, bajo la influencia de algún controlador de animación. Un rig generalmente se compone de partes cinemáticas directas y cinemáticas inversas que pueden interactuar entre sí. La animación esquelética se refiere a la parte cinemática directa del rig, donde un conjunto completo de configuraciones de huesos identifica una pose única.
Cada hueso del esqueleto está asociado con alguna porción de la representación visual del personaje (la malla ) en un proceso llamado skinning. En el caso más común de un personaje de malla poligonal , el hueso está asociado con un grupo de vértices ; por ejemplo, en un modelo de un ser humano, el hueso del muslo estaría asociado con los vértices que forman los polígonos en el muslo del modelo. Porciones de la piel del personaje normalmente pueden asociarse con múltiples huesos, cada uno con factores de escala llamados pesos de vértice o pesos de mezcla . Por lo tanto, el movimiento de la piel cerca de las articulaciones de dos huesos puede verse influenciado por ambos huesos. En la mayoría de los motores gráficos de última generación, el proceso de skinning se realiza en la GPU mediante un programa de sombreado .
Para una malla poligonal, cada vértice puede tener un peso de mezcla para cada hueso. Para calcular la posición final del vértice, se crea una matriz de transformación para cada hueso que, cuando se aplica al vértice, primero coloca el vértice en el espacio del hueso y luego lo vuelve a colocar en el espacio de la malla. Después de aplicar una matriz al vértice, se escala por su peso correspondiente. Este algoritmo se llama skinning de paleta de matriz o skinning de mezcla lineal, [4] porque el conjunto de transformaciones de hueso (almacenadas como matrices de transformación ) forman una paleta para que el vértice de skining elija.
La animación esquelética es la forma estándar de animar personajes u objetos mecánicos durante un período prolongado de tiempo. Es una técnica muy utilizada por los artistas de videojuegos y en la industria cinematográfica , y también se puede aplicar a objetos mecánicos y a cualquier otro objeto formado por elementos rígidos y articulaciones.
La captura de rendimiento (o captura de movimiento ) puede acelerar el proceso de animación esquelética, además de aumentar el nivel de realismo.
Los equipos pueden funcionar con física de muñeco de trapo que calcula automáticamente la física del movimiento y la resistencia con estructuras esqueléticas. Se pueden agregar propiedades de anatomía virtual, como el peso de las extremidades, la reacción muscular, la fuerza ósea y las limitaciones de las articulaciones , para lograr efectos realistas de rebote, pandeo, fractura y volteretas.
Algunos paquetes de software populares dentro de los cuales se pueden crear plataformas incluyen Blender , Autodesk Maya , SideFX Houdini , Autodesk 3ds Max , Maxon Cinema 4D , Unreal Engine y muchos otros.