Locomotion
Automatic walking, running, jumping and more with Locomotion.
Usage
Here's what you do.
- Select body
- Select feet
- Run
Assign Plan
What is a "Plan"?
The generated locomotion is the result of a "plan", meaning each of the inputs you give it. Including this initial selection.
Examples
Let's start with a quick look at what you can get out of this new toy.
Locobot
Modeling by Christophe Desse.
Spot and Friends
Happy Box
Yes, you can give it a terrain.
Two Happy Boxes
Locoboy
A 2-legged quadruped, look at 'em go!
Locomotion & Physics
Playing well together.
Humanoid Locomotion
As you can tell, quadrupeds fair much better!
Human Dynamics
But with some physics, it's starting to look nice. :)
Abilities
Here's what we're aiming for with this feature.
To achieve this, you've got control over:
- The start and end positions of the body and feet
- The order and duration of steps, called a
Step Sequence
- An optional
Terrain
upon which to walk - A few additional extras for fine-tuning things
There can be any number of feet and it can travel any amount of distance. The Step Sequence
is how you're able to achieve different kind of walks.
- Walking
- Running
- Trotting
- Dancing
- Jumping
- ...
And the Terrain
is how it can do this across geometry of any complexity.
Limitations
Let's talk about what cannot be solved with Ragdoll Locomotion
.
Currently, it only understands 2 things.
- The body
- The foot
And for feet, it only understand the position of the foot, not its orientation.
Most importantly, it does not understand arms! Arms are critical to human locomotion, they swing in tandem with each step. This version of Ragdoll does not understand arms. Yet. Meaning it's good for locomotion involving any creature that does not have arms.
But Marcus, that doesn't leave much room for many creatures. They all have arms!
Think again!
- Dogs
- Cats
- ..any quadruped!
- 6-legged creatures, e.g. crabs
- 8-legged creatures, e.g. spiders
- n-legged tentacle monsters
With that out of the way, let's look at what it can do!
Press T
Locomotion also has a manipulator, accessible by selecting the rPlan
node and pressing T
on your keyboard.
Background Processing
Locomotion is computed in the background.
Normally, it'll take a second or two to compute 4-12 seconds worth of locomotion, and you can safely interact with Maya whilst it's running. It has zero impact on your overall Maya or character rig performance.
Rig Compatibility
Anything from a box with a sphere for feet to the most complex digi-double will do.
The rig in the above example is nothing special, as you've seen from the examples above this works on "rigs" as complex as a box and 2 spheres.
Multiple Characters
You can have as many characters in the scene as you like.
Parallel Processing
That's right! If 1 character takes 2 seconds to compute, 5 characters also take 2 seconds to compute. Or 10 characters, or 100 characters. 2 seconds in total, that's all you'd have to wait, up to the number of cores on your system.
As core-count continues to increase in our machines, you can expect the number of characters being run in parallel to increase as well, up to the level of full crowds; each individual character a unique and precise sequence of steps that conform to their environment.
Juice Left
There is still a little bit of juice left to squeeze.
At the moment, if Ragdoll detects any relation between one plan and another, it will run these one-by-one.
Normally, this is not the case, but if you for example connect the output of one plan to the input of another, there isn't much that can be done other than wait for one to finish. However this can also happen when unrelated things are connected, such as your character being connected to two plans, such that you can blend between them. This is too much, and will be addressed in a future release. Subtle balance!
Physics
Locomotion is an entirely separate "brain" that you may, or may not, want to combine with regular Markers.
Body and/or feet can be Kinematic
or driven by a Pin Constraint
, or anything inbetween.
Recording
Unlike a simulation, Locomotion
is entirely time independent. So it isn't strictly necessary to record; it will run directly on your character rig.
You can edit the locomotion as keyframes via Maya's native Bake Results
command.
Step Sequencer
This will become your new best friend. With an easily recognisable pattern for when to move your feet.
- Select
Sequencer Mode
- Hold
Shift
to paint - Hold
Ctrl
to erase
It can be used to produce a wide variety of locomotion, such as this frog sequence.
Targets
Once you've figured how to get somewhere, next up is figuring out where to go.
- Select
Target Mode
- Select either
Start
orEnd
of the body or foot - Use the
Translate
gizmo to control the position of eitherbody
orfoot
- Use the
Rotate
gizmo to control the start and end orientation of thebody
Use the Rotate
gizmo to control the orientation of the body at the start or end positions.
Limits
Is your character jumping or limping? Maybe dancing? Limits control the area in which each foot is allowed to move.
- Select
Limit Mode
- Select the
body
to adjust the size of your character - Select a
foot
to adjust the amount of motion a foot is allowed to have
Here's an example of how a short limit on one foot, and long steps with the other foot, can generate a wounded or limping locomotion.
Terrain
Things can easily get more interesting by swapping out that flat ground with some geometry.
Shift to Toggle
You can choose whether to use the Shift and Control keys to add and remove steps in the Locomotion Step Sequencer, or whether to use Shift for both. Dragging over a filled step will erase it, whereas dragging over an unfilled step will fill it. A toggle!