# Física ragdoll

En el motor físico de una computadora, la física ragdoll o pelele es un tipo de proceso de animación, con frecuencia usado como reemplazo de las animaciones estáticas de muerte tradicionales.

## Introducción

En los primeros videojuegos, las animaciones usadas para las secuencias de muerte de los personajes se creaban manualmente. Esto tenía como ventaja una baja utilización del CPU, así como los datos necesarios para animar la muerte del personaje fue elegida a partir de un número de cuadros predibujados. Cuando las computadoras incrementaron en poder, llegó a ser posible hacer simulaciones físicas limitadas en tiempo real.
El ragdoll, por lo tanto, es una colección de múltiples cuerpos rígidos (de los cuales uno esta normalmente ligado a un hueso en el motor gráfico del sistema de animación esquelética) atados por un sistema de constreñimiento que restringe los huesos para que no puedan desplazarse uno respecto del otro. Cuando el personaje muere, su cuerpo comienza a caer al suelo, cumpliendo esas restricciones sobre cada uno de los movimientos de las articulaciones, haciendo que con frecuencia parezca más realista.

## Enfoque

Los ragdolls han sido implementados usando el Algoritmo de Featherstone y los contactos de resortes amortiguadores. Un enfoque alternativo utiliza una resolución de constreñido y contactos idealizados. Cuando el enfoque constreñido del cuerpo rígido para los ragdolls es el más común, otras técnicas "pseudo-ragdoll" han sido usadas:

### Integración de Verlet

Usado en Hitman: Codename 47 y popularizado por Thomas Jakobsen, esta técnica modela cada hueso del personaje como un punto conectado a un número arbitrario de otros puntos. El constreñimiento de Verlet es mucho más simple y rápido para resolver que la mayoría de los que están en un completo modelado de sistema de cuerpo, resultando un menor consumo de CPU para los personajes.

### Cinemática inversa

Usado en Halo: Combat Evolved, esta técnica depende de una reproducción de la animación de muerte de forma pre-diseñada y luego se usa la cinemática inversa para forzar al personaje a posar una posible posición después de que la animación se haya completado. Esto significa que, durante una animación, un personaje podría tener problemas de clipping a través del mundo geométrico, pero luego de llegar al descanso todos sus huesos estarán en un espacio válido.

### Ragdoll mezclado con Animaciones

Esta técnica fue usada en juegos como Halo 2,Uncharted: Drake's Fortune, Call of Duty 4: Modern Warfare y Modern Warfare 2, y funciona empezando por una animación prefabricada, y una vez termina esta, empiezan las físicas ragdoll. Esto ayuda a darle realismo al juego ya que cuando los enemigos son asesinados no se mueren al instante sino que simulan "sentir dolor" y agarrarse una zona del cuerpo teniendo en cuenta el lugar en donde recibió el último disparo o daño antes de morir.

### Animación por procedimientos

Utilizados tradicionalmente en medios que no son en tiempo real (Cine, TV, etc.), esta técnica (usada en la serie de videojuegos Medal of Honor, desde Medal of Honor: European Assault en adelante) emplea el uso de varias capas en modelos físicos (huesos, músculos, nervios, etc.). Al eliminar el uso de animaciones pre-hechas, cada reacción observada por el jugador es única.

## Ventajas/desventajas del ragdoll

Debido a la compleja y costosa naturaleza computacional de dicha simulación, la mayoría de los juegos que emplean ragdolls lo hacen con aproximaciones simples:
* Los huesos de las extremidades, como por ejemplo, los dedos, a menudo se dejan sin simular.
* Se suelen usar articulaciones simples en vez de recrear las auténticas propiedades que presenta un esqueleto humano real. Por ejemplo, el movimiento de la rodilla humana se modela con un solo eje de giro, como si fuera una bisagra, a pesar de que, en la realidad, permite un movimiento de rotación, aunque muy limitado.
La principal ventaja que ofrece el ragdoll, frente a las técnicas de animación tradicional, es el mayor grado de realismo a la hora de interactuar de forma correcta con el escenario. Mientras que, usando animación tradicional, habría que diseñar manualmente las animaciones para todas las circunstancias posibles (chocar con una pared, caer en un hoyo, etc), la física ragdoll lo hace automáticamente, con un razonable parecido a la realidad, y con mucha más variedad, ya que, incluso en las mismas circunstancias, la reacción puede ser diferente en cada ocasión porque se detecta en tiempo real la colisión de las partes del ragdoll con el escenario y todos sus objetos.