Los primeros videojuegos utilizaban animaciones creadas manualmente para las secuencias de muerte de un personaje. Esto tenía la ventaja de un bajo uso de la CPU , ya que los datos necesarios para animar a un personaje "moribundo" se elegían de un número determinado de fotogramas prediseñados. En cambio, un muñeco de trapo es una colección de múltiples cuerpos rígidos (cada uno de los cuales está normalmente atado a un hueso en el sistema de animación esquelética del motor gráfico ) unidos entre sí por un sistema de restricciones que restringen el movimiento de los huesos entre sí. Cuando el personaje muere, su cuerpo comienza a derrumbarse en el suelo, respetando estas restricciones en el movimiento de cada una de las articulaciones, lo que a menudo parece más realista.
El término ragdoll proviene del problema de que los sistemas articulados , debido a las limitaciones de los solucionadores utilizados, tienden a tener poca o ninguna rigidez en las articulaciones y los músculos esqueléticos , lo que lleva a que el personaje colapse como un muñeco de trapo de juguete , a menudo en posiciones cómicamente improbables o comprometedoras. El uso moderno de la física ragdoll va más allá de las secuencias de muerte.
Hay juegos de lucha en los que el jugador controla una parte del cuerpo del luchador y el resto lo sigue, como Rag Doll Kung Fu , así como juegos de carreras como la serie FlatOut .
Las recientes tecnologías de animación procedimental, como las que se encuentran en el software Euphoria de NaturalMotion , han permitido el desarrollo de juegos que dependen en gran medida de la suspensión de la incredulidad facilitada por la física realista de los músculos y nervios de todo el cuerpo como parte integral de la experiencia de juego inmersiva, en oposición al uso anticuado de técnicas de animación enlatadas. Esto se ve en Grand Theft Auto IV , Grand Theft Auto V , Red Dead Redemption , Max Payne 3 y Red Dead Redemption 2, así como en títulos como Star Wars: The Force Unleashed de LucasArts y Kontrol de Puppet Army Faction , que presentan locomoción de muñeco de trapo impulsada en 2D en superficies irregulares o en movimiento.
Aproches
Los Ragdolls se han implementado utilizando el algoritmo de Featherstone y contactos de resorte-amortiguador. [2] Un enfoque alternativo utiliza solucionadores de restricciones y contactos idealizados. [3] Si bien el enfoque de cuerpo rígido restringido para los Ragdolls es el más común, se han utilizado
otras técnicas de " pseudo -ragdoll":
Integración de Verlet : utilizada por Hitman: Codename 47 y popularizada por Thomas Jakobsen [4] , esta técnica modela cada hueso del personaje como un punto conectado a un número arbitrario de otros puntos a través de restricciones simples. Las restricciones de Verlet son mucho más simples y rápidas de resolver que la mayoría de las de un sistema de cuerpo rígido completamente modelado, lo que da como resultado un consumo de CPU mucho menor para los personajes.
Posprocesamiento de cinemática inversa : utilizada en Halo: Combat Evolved , esta técnica se basa en reproducir una animación de muerte preestablecida y luego usar cinemática inversa para forzar al personaje a una posible posición después de que la animación haya terminado. Esto significa que, durante una animación, un personaje podría terminar recortando la geometría del mundo, pero después de que se haya detenido, todos sus huesos estarán en un espacio válido. Las limitaciones pueden obligar a las partes del cuerpo a moverse entre sí de formas poco naturales; por ejemplo, la mano de un personaje puede reposar sobre su pecho en una animación de muerte, pero luego la mano se mueve a través del pecho hasta el suelo debajo mediante cinemática inversa.
Ragdoll combinado: esta técnica se utilizó en Halo 2 , Halo 3 , Call of Duty 4: Modern Warfare , Left 4 Dead , Medal of Honor: Airborne , Team Fortress 2 y Uncharted: Drake's Fortune . Funciona reproduciendo una animación prefabricada y luego vinculando el ragdoll al último fotograma de la animación. Ocasionalmente, el modelo del jugador ragdolling parecerá estirarse y girar en múltiples direcciones, como si el personaje estuviera hecho de goma. Se ha observado que este comportamiento errático ocurre en juegos que usan ciertas versiones del motor Havok , como Halo 2 y Fable II .
Ragdoll activo: se utiliza principalmente en juegos de Unreal Engine como Unreal Tournament 3 y Killing Floor 2. Funciona reproduciendo una animación prefabricada, pero restringiendo el resultado de esa animación a lo que permitiría un sistema físico. Esto ayuda a aliviar la sensación de muñeco de trapo de los personajes que de repente se quedan flácidos, ofreciendo también una interacción ambiental correcta. Esto requiere tanto procesamiento de animación como procesamiento de física, lo que lo hace incluso más lento que un ragdoll tradicional solo, aunque los beneficios de los elementos visuales adicionales parecen eclipsar la reducción en la velocidad de procesamiento. Véase también: Euphoria (software)
Animación procedimental : tradicionalmente utilizada en medios que no son en tiempo real (cine, televisión, etc.), esta técnica (usada en la serie Medal of Honor a partir de European Assault en adelante) emplea el uso de modelos físicos de múltiples capas en personajes no jugadores (huesos, músculos, sistemas nerviosos) y elementos escénicos deformables a partir de "materiales simulados" en vehículos, etc. Al eliminar el uso de animación prefabricada, cada reacción vista por el jugador es única, aunque sigue siendo determinista.
Wikimedia Commons tiene medios relacionados con Física Ragdoll .
^ Wyckoff, Richard (14 de mayo de 1999). "Postmortem: Trespasser de DreamWorks Interactive". Desarrollador de juegos.
^ US 6067096, Nagle, John, "Método y sistema para generar colisiones realistas en simulaciones gráficas", publicado el 23 de mayo de 2000
^ Baraff, David y Witkin, Andrew (1997). "Modelado basado en la física: principios y práctica". Proc. SIGGRAPH '97 . SIGGRAPH 97. Los Ángeles: Asociación para Maquinaria Computacional, Grupo de Interés Especial en Gráficos.
^ "Física avanzada de personajes". Teknikus.dk. Archivado desde el original el 10 de abril de 2008. Consultado el 30 de noviembre de 2008 .