Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Ragdoll physics
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
{{short description|Type of procedural animation used by physics engines}} {{Use mdy dates|date=April 2025}} {{More citations needed|date=July 2011}} [[Image:Animatsragdollphysics.jpg|220x220px|thumb|Still from an early 1997 animation using ragdoll physics]] '''Ragdoll physics''' is a type of [[procedural animation]] used by [[physics engine]]s, which is often used as a replacement for traditional static death animations in [[video game]]s and [[Animation|animated films]]. As computers increased in power, it became possible to do limited real-time [[physical simulation]]s, which made death animations more realistic. Early [[video game]]s used manually created animations for a character’s death sequences. This had the advantage of low [[Central processing unit|CPU]] utilization, as the data needed to animate a "dying" character was chosen from a set number of pre-drawn frames. In contrast, a ragdoll is a collection of multiple [[rigid body|rigid bodies]] (each of which is ordinarily tied to a [[bone]] in the graphics engine's [[skeletal animation]] system) tied together by a system of constraints that restrict how the bones may move relative to each other. When the character dies, their body begins to collapse to the ground, honouring these restrictions on each of the joints' motion, which often looks more realistic. The term ''ragdoll'' comes from the problem that the [[Articulation (anatomy)|articulated]] systems, due to the limits of the solvers used, tend to have little or zero joint/[[skeletal muscle]] stiffness, leading to a character collapsing much like a toy [[rag doll]], often into comically improbable or compromising positions. Modern use of ragdoll physics goes beyond death sequences. == History == The ''[[Jurassic Park (franchise)|Jurassic Park]]'' licensed game ''[[Jurassic Park: Trespasser]]'' exhibited ragdoll physics in 1998 but received very polarised opinions; most were negative, as the game had a large number of bugs. It was remembered, however, for being a pioneer in [[Game physics|video game physics]].<ref>{{cite news |url=http://www.gamasutra.com/view/feature/3339/postmortem_dreamworks_.php |archive-url=https://web.archive.org/web/20080227075642/http://www.gamasutra.com/view/feature/3339/postmortem_dreamworks_.php |url-status=dead |archive-date=February 27, 2008 |title= Postmortem: DreamWorks Interactive's Trespasser |publisher=Game Developer |date=May 14, 1999 |author=Wyckoff, Richard }}</ref> There are [[fighting game]]s where the player controls one part of the body of the fighter and the rest follows along, such as ''[[Rag Doll Kung Fu]]'', as well as racing games such as the ''[[FlatOut (series)|FlatOut]]'' series. Recent procedural animation technologies, such as those found in [[NaturalMotion]]'s [[Euphoria (software)|Euphoria]] software, have allowed the development of games that rely heavily on the [[suspension of disbelief]] facilitated by realistic whole-body muscle/nervous ragdoll physics as an integral part of the immersive gaming experience, as opposed to the antiquated use of canned-animation techniques. This is seen in ''[[Grand Theft Auto IV]]'', ''[[Grand Theft Auto V]]'', ''[[Red Dead Redemption]]'', ''[[Max Payne 3]]'' and ''[[Red Dead Redemption 2]]'' as well as titles such as [[LucasArts]]' ''[[Star Wars: The Force Unleashed]]'' and ''Puppet Army Faction's Kontrol'', which feature 2D powered ragdoll locomotion on uneven or moving surfaces. == Approaches == Ragdolls have been implemented using [[Featherstone's algorithm]] and spring-damper contacts.<ref>{{Cite patent|country=US|number=6067096|pubdate=2000-05-23|title=Method and system for generating realistic collisions in graphical simulations|inventor1-last=Nagle|inventor1-first=John}}</ref> An alternative approach uses constraint solvers and idealized contacts.<ref>{{cite conference|url=https://www.cs.cmu.edu/~baraff/sigcourse/|author1=Baraff, David |author2=Witkin, Andrew |name-list-style=amp |title=Physically Based Modeling: Principles and Practice |conference=SIGGRAPH 97 | book-title=Proc. SIGGRAPH '97 |conference-url=http://www.siggraph.org/s97/| publisher=Association for Computing Machinery Special Interest Group on Graphics|year=1997| location=Los Angeles}}</ref> While the constrained-rigid-body approach to ragdolls is the most common, other "[[pseudo]]-ragdoll" techniques have been used: *[[Verlet integration]]: used by ''[[Hitman: Codename 47]]'' and popularized by [[Thomas Jakobsen]],<ref>{{cite web|url=http://www.teknikus.dk/tj/gdc2001.htm |title=Advanced Character Physics |publisher=Teknikus.dk |access-date=2008-11-30 |archive-url=https://web.archive.org/web/20080410171619/http://www.teknikus.dk/tj/gdc2001.htm|archive-date=April 10, 2008}}</ref> this technique models each character bone as a point connected to an arbitrary number of other points via simple constraints. Verlet constraints are much simpler and faster to solve than most of those in a fully modelled rigid body system, resulting in much less CPU consumption for characters. *[[Inverse kinematics]] post-processing: used in ''[[Halo: Combat Evolved]]'', this technique relies on playing a pre-set death animation and then using inverse kinematics to force the character into a possible position after the animation has completed. This means that, during an animation, a character could wind up [[Clipping (computer graphics)|clipping]] through world geometry, but after it has come to rest, all of its bones will be in valid space. Limitations can force body parts to move through each other in unnatural ways; for instance, a character's hand may lay on top of their chest in a death animation, but the hand is then moved through the chest to the ground underneath by inverse kinematics. *Blended ragdoll: this technique was used in ''[[Halo 2]]'', ''[[Halo 3]]'', ''[[Call of Duty 4: Modern Warfare]]'', ''[[Left 4 Dead]]'', ''[[Medal of Honor: Airborne]]'', ''[[Team Fortress 2]]'', and ''[[Uncharted: Drake's Fortune]].'' It works by playing a pre-made animation, then binding the ragdoll to the last frame of the animation. Occasionally the ragdolling player model will appear to stretch out and spin around in multiple directions, as though the character were made of rubber. This erratic behavior has been observed to occur in games that use certain versions of the [[Havok (software)|Havok]] engine, such as ''Halo 2'' and ''[[Fable II]]''. *Active ragdoll: used primarily in ''[[Unreal Engine]]'' games such as ''[[Unreal Tournament 3]]'' and ''[[Killing Floor 2]]''. It works by playing a pre-made animation, but constraining the output of that animation to what a physical system would allow. This helps alleviate the ragdoll feeling of characters suddenly going limp, offering correct environmental interaction as well. This requires both animation processing and physics processing, thus making it even slower than a traditional ragdoll alone, though the benefits of the extra visuals seem to overshadow the reduction in processing speed. See also: ''[[Euphoria (software)]]'' *[[Procedural animation]]: traditionally used in non-realtime media (film/TV/etc), this technique (used in the [[Medal of Honor (video game series)|Medal of Honor]] series starting from [[Medal of Honor: European Assault|European Assault]] onward) employs the use of multi-layered physical models in non-playing characters (bones / muscle / nervous systems), and deformable scenic elements from "simulated materials" in vehicles, etc. By removing the use of pre-made animation, each reaction seen by the player is unique, whilst still deterministic. == See also == * [[Cartoon physics]] * [[Joint constraints]] * ''[[Stair Dismount]]'' * ''[[Turbo Dismount]]'' * ''[[Lugaru]]'' == References == {{Commons category|Ragdoll physics}} {{Reflist}} {{Prone to spam|date=November 2014}} <!-- {{No more links}} Please be cautious adding more external links. Wikipedia is not a collection of links and should not be used for advertising. Excessive or inappropriate links will be removed. See [[Wikipedia:External links]] and [[Wikipedia:Spam]] for details. If there are already suitable links, propose additions or replacements on the article's talk page, or submit your link to the relevant category at DMOZ (dmoz.org) and link there using {{Dmoz}}. --> {{Physics engines}} [[Category:Computer physics engines]] [[Category:Video game development]]
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)
Pages transcluded onto the current version of this page
(
help
)
:
Template:Cite conference
(
edit
)
Template:Cite news
(
edit
)
Template:Cite patent
(
edit
)
Template:Cite web
(
edit
)
Template:Commons category
(
edit
)
Template:More citations needed
(
edit
)
Template:Physics engines
(
edit
)
Template:Prone to spam
(
edit
)
Template:Reflist
(
edit
)
Template:Short description
(
edit
)
Template:Use mdy dates
(
edit
)