Manikin
Manikin
"Make your own motion reference"
In this tutorial, we will setup a human-like character for use as reference or constraint target to your rig. You will be able to pose and position this Manikin like you would a real Manikin, and drop it from various heights and onto various obstacles to produce realistic poses as it falls.
Something the animator can import and throw around for reference on how it would look like.
Version 1.2 - Up to date
Written for Ragdoll 2023.08.01
and above.
Estimated Time
- 🕐 10 minutes
You will learn
- ✔️ How to apply markers onto rig controls
- ✔️ How to tune the collision shapes of the markers
- ✔️ How to record your simulation back onto the rig controls
Where to find help
If you find or run into any issues with this tutorials, here's what you can do.
- ✔️ Ask in the chat
- ✔️ Ask on the forums
Spelling
There are two ways to spell "Manikin", this tutorial is based on this term here.
Bring Your Own Rig
Follow this tutorial either using our provided Manikin rig, or your own character. It can have any number of limbs.
Motivation
Why should we even bother simulating a character?
Finding motion reference is one of the most important activities for any animator. And yet I can safely challenge you to find reference for perhaps the most common motion in all blockbuster movies today, something that is either impossible or dangerous for actors or animators alike.
Or how about reference of someone simply falling over, perhaps from heat stroke or staring into the sun.
This is, after all, one of the major reasons for pursuing computer graphics in storytelling rather than real people.
Animators bring life to characters, but of equal challenge is that of lifelessness. Of natural and realistic motion without someone behind the wheel. Be it getting hit or shot, blasted or thrown, animating lifelessness is enough to challenge even the most senior of animators.
As you will find, there is a lot more we can do once our motion reference is in 3D, on our actual character rig within Maya and infinitely customisable. As opposed to some video on the internet.
Setup
Create a new reference of your chosen character rig or download this Manikin rig to get started.
Play around with the controls to get a feel for what we're working with. This character is entirely FK which will make simulating it straightforward.
Simulation
The stage is set, now let's apply physics!
Torso
Let's start with the Torso.
- Select
hip_ctl
- Shift select
torso_ctl
- Shift select
head_ctl
- Run
Assign and Connect
This will produce our first Group
, which is a collection of connected Markers
.
New Concept
Group
The rdGroup
node contains attributes that affect all contained markers. It's where you'd edit the overall look and feel of your character, like how stiff it should be and whether or not body parts should collide with each other.
Each Marker can either inherit or otherwise override these values.
Left Arm
Next we will continue from the torso_ctl
and out into the arms.
- Select the
torso_ctl
- Shift select
L_clavicle_ctl
- Shift select
L_upperArm_ctl
- Shift select
L_lowerArm_ctl
- Shift select
L_hand_ctl
- Run
Assign and Connect
Is the order important?
Yes, the order in which you select will determine how the markers are connected.
Your first selection is extra important, as it determines whether to start a new group, like for the hip_ctl
, or to add to an existing group, like the torso_ctl
.
In this case, we would very much like our arm to be connected to the torso.
Can I skip the clavicles?
Yes, if you have extra controls - such as twist
or bend
- you can skip these if you don't care to simulate them.
Simply skip over them as you select, from torso_ctl
directly to L_upperarm_ctl
.
Right Arm
Now repeat the above process for the other arm.
Legs
Now let's continue down the hips and into the legs.
- Select the
hip_ctl
- Shift select
L_thigh_ctl
- Shift select
L_knee_ctl
- Shift select
L_foot_ctl
- Run
Assign and Connect
We will address those long feet shortly. 👃
Drop Test
That's enough setup, let's drop him!
New Concept
Behaviour
Each Marker has a "behaviour", which tells Ragdoll it should interpret the control it has been assigned. Should it fall with gravity? Should it try and match the pose? Should it remain fully animated, even in simulation?
- Select
hip_ctl
- Set
Behaviour = Simulated
- Drop the Manikin a few times
The default behaviour for Assign and Connect
is to give the first selection - the "root" - a Animated
behaviour.
What does Animated mean?
Animated means "copy the animation into simulation and make no changes to it"
By instead setting this to Simulated
, then Ragdoll will only use the animation for the starting position and orientation of the simulation.
Inherit
Alternatively, you can set it to Inherit
to have it inherit the value of the rGroup
node that was created for the whole character.
Tuning
Next let's address the elephant in the room; the shapes. They look awful.
Volumes
The shape of each collider affects your simulation in 2 ways.
- Contact Points
- Rotation Mass
The contact point can be important if your character interacts with an environment or another character. Like in this case where the feet are incorrectly colliding with the ground because of a bad shape.
That's not always the case though, sometimes you just want overlapping motion without contacts in which case the shapes won't matter.
They do however also affect their resistance to rotation. Consider this.
Here, we rotate the exact same shapes, the exact same amount in the exact same amount of time. And yet they respond differently.
This shape has vastly different dimensions in the X, Y and Z directions, resulting in a different rotation mass for each one. As a result, the effort required to rotate it in each axis differs too.
In practice, you'll find this for just about any limb on a character, which is typically longer in one axis. For our Manikin, this is especially true for the default clavicle shapes.
Override Rotate Mass
In some cases, you have a shape but want it to act like a different shape. Rotate Mass
is very similar to normal Mass
, except in 3 dimensions. Where the position of an object is affected equal in X, Y and Z directions, rotations have 3 separate masses.
Shapes
With this in mind, let's tune some shapes.
- Run
Manipulator
from theRagdoll
menu
Alternatively
Select a rMarker
node in the Channel Box, or the rGroup
node in your Outliner, and hit the T
key on your keyboard. You can also select the shape of the rSolver
node.
This brings up the Manipulator interface, where you can manipulate shapes using mouse gestures.
Great, now let's turn those hands and feet into boxes.
Translate, Rotate and Scale
Notice I'm using the..
- Middle-Mouse Button to
Translate
- CTRL + Middle-Mouse Button to
Rotate
- CTRL + Left-Mouse Button to
Scale
The help text screen-right will help you remember these.
Greater Value Step
While dragging the value on Manipulator UI panel, you may hold Shift
to increase value changing step.
Symmetry
Also notice the edits are symmetrical; even when they don't start out that way like the feet!
Recording
That's all there is for setting up your character rig for simulation! Let's now transfer the simulation back onto the rig.
- Run
Record Simulation
- Enjoy
Start Again
The recorded simulation ends up on an Animation Layer, and is also Cached. To start over, delete this layer and disable the cache.
Next Steps
In the next tutorial, we'll take this a bit further. As you play around with the Rotate Stiffness
on either the rGroup
or individual rMarker
nodes, you'll find some limbs start to misbehave. Especially the knees and elbows, that normally won't allow rotations past a certain angle in a real human (or Manikin for that matter!).
That isn't the case here, because we've left out a critical part of any ragdoll - "limits".
See you there!