Ragdoll Knockdown Getup

Ever since I started to make my 2D top-down racing game in the early 2000s I toyed with the idea of having track-side characters that could be "interacted" with. And when I say interacted, I mean knocked down =) Back then I could only get as far as to imagine that a small 6x6 pixel sprite would be replaced by another knocked over version of a character.

Now that I've started to prototype this racing game technology has come so much further. I like the low poly effect and my game will be viewed from a fair distance but that doesn't stop me from adding a fair bit of detail with a relatively small effort.

A couple of years ago I bought a Unity asset by Root Motion called "Puppet Master" and that asset was super simple to implement to get exactly the look I wanted. As you bump a bystander, or in this case the checker flag marshal, I wanted to transition into a rag doll and since this is a non-violent game you can never kill anyone and the flag marshal is never injured and he'll get back up as long as nothing is obstructing him as this video shows:

To get this to work I have modeled, rigged and skinned my flag marshal character in Blender. I also created some animations such as running, walking, idle, waving flag etc. The characters will, as mentioned, be viewed from quite a distance so the low poly count is sufficient. Both the video above and the Blender screenshots below are zoomed in versions to show a little bit more detail of how it's created.

The Puppet Master asset allows you to create a ragdoll automatically since it's a humanoid character. With just one click it'll turn the character into a custom jointed and very customizable ragdoll. Once there is a ragdoll copy of the character in Unity you can "unpin" the ragdoll from the current animation which basically makes the character fall over as you unpin it:

But rather than simply using "unpinning" Puppet Master also comes with behaviors that makes it easy to knock down a character turning him into a ragdoll and then triggering and blending a "get up" animation. The result is really pleasing. To demonstrate I'm just dragging around a cube obstacle to show how the character and ragdoll behaves:

Finally, this is roughly from how far the action will be viewed which demonstrated that the low poly nature of the character and animation should be sufficient (oh, and by the way - the car shouldn't EXPLODE when hitting the flag marshal, that's just a bug =)


Log in with itch.io to leave a comment.

A racing game where you can hit spectators. It has some kind of Carmageddon feel !

Well, in this day and age I felt a bit reluctant about implementing it but I decided I can't let that be in the way. I guess you'll get minus points or get penalized if you bump someone and they'll always get up =)