2023.04.01
Highlight for this release is Locomotion 2.0
- ADDED Locomotion 2.0 A ton of improvements and new abilities!
- ADDED New Tutorials New Tutorials from Elbebawy
- ADDED Maya 2024 Support for Maya 2024 is here!
- ADDED Account Management Manage your Ragdoll account with ease
- ADDED Stepped Simulation Simulate on 2's!
- ADDED Blend Simulation Smooth transition between animation and simulation
- ADDED Collision Group More intuitive management of what does and does not collide
- ADDED Multi-replace mesh Replace with multiple meshes!
- ADDED Animation Refinement Turn your blocky animation into final
- ADDED Iterative Updates More immediate and continuous updates
- ADDED Trajectories Returns Faster and stronger!
- ADDED Mass Independent Fields More intuitive fields
- ADDED Quality of Life Less worry about the start frame
- UPDATED Solver Update New and improved, subtly different
Showcase
As is tradition, let's start off with some of the cool Ragdoll material surfacing across the interwebs since the last release.
Mechanical Spider
"Mechanical Spider" by vertexmonster
60s Marionettes
Some excellent use of Ragdoll here by Ernst-Jan on the forums
Human Ball
Zombies + Radial field = This, by Jason
Oh Deer
Another one by Jason from last Christmas.
Fast Food
Jason has been on fire lately, here's another knockout!
A Whale of a Time
Jason jason jason.
Locomotion 2.0
First released in June 2022, this automated method of generating complete character locomotion has seen a major update!
With a new and much more intuitive workflow, ability to locomote along a path, with feet snapping to terrain and interactive updates as the solver works, you'll be able to achieve much greater results with far less headaches.
New Workflow
Locomotion Markers.
Borrowing from Markers, Locomotion no longer occupies your animation channels directly. Instead, a preview is shown for you to evaluate and later record.
Iterative Updates
More insight into while you wait.
Locomotion will now show you each result it comes up with, as it searches for one that both looks great and fulfils each of your requirement; targets, limits, mass and gravity.
New Manipulators
Editing targets and limits was a huge chore with Locomotion 1.0. This new release makes authoring plans much less error prone and more fun.
Translate
Drag the gizmo to translate a target. Notice how it is no longer possible to author invalid targets that hover above the ground, a significant burden to anyone trying to achieve nice results has been lifted!
Rotate
Hold Ctrl (on Windows and Linux, Cmd on Mac) to rotate a target.
Height
Hold Shift to adjust the height of the body. Feet must always touch the ground.
Terrain Snapping
Aligning feet to the ground in the case of having a terrain was even more daunting; but no longer! Now feet automatically snap to any terrain.
Multi-target
Go there, then here. Do a twirl, and then go over there!
In Locomotion 1.0, you were able to specify a start and end position for your character. But now, you can specify any number of points inbetween, effectively a path!
Timing
Start fast, then walk slowly. Then finish fast!
With more than 1 target, you also need to decide at when you intend on a target being reached. Click and drag on the targets in the UI to adjust.
Shading
You'll notice that each target has two shades, a top and bottom.
Shade | Meaning |
---|---|
Top | Distance, dark is less |
Bottom | Timing, dark is less |
Pin
Targets are guidelines to Locomotion. It'll try to follow them, but if some are physically impossible or there are conflicting goals then it will try and find a compromise. Sometimes, you need the target to be more respected, and that's when you can "pin" a target.
Multi-plan
Create complex locomotion by stringing together two or more plans.
Complete the illusion by blending them all together with traditional Marker physics.
Here's how it works.
- Select a plan
- Select a second plan
- Run Align Plans
The command will start the second plan where the first plan ends, creating one continuous motion.
Animation to Plan
A "make good" button?
We've talked about generating an animation from a plan, but what about the reverse? What if we could use your animation as input to the plan, and output a refined version of it?
The Animation to Plan
menu item evaluates your animation and converts it into (1) targets and (2) stepsequence; the ingredients to a fully defined plan.
Terrain Accuracy
Plans now more accurately follows your terrain and enables you to visualise what Locomotion sees.
Reset Starting Position
If you change the starting position of your plan, or move the character after having assigned a plan, you can re-align the two with the Reset Starting Position command.
Terrain Debugging
If your terrain has two sides, Locomotion can struggle to snap its feet to the one you intend.
Here's a problematic result.
If we look at the feet snapping, we can see how they tend to snap towards the lower side of this terrain.
We can resolve this by removing the lower side altogether.
And presto, all good!
New Tutorials
Mohamed Elbebawy has produced a new series of tutorials for Ragdoll, available here.
Maya 2024
Released just a few days ago, Ragdoll is fully onboard.
On the other hand, Maya 2018 has left the chat and is no longer supported by Ragdoll (or Autodesk, for that matter!)
Account Management
You can now monitor and manage your account with us, starting with performing remote deactivation of your node-locked licences.
Features
- Deactivate machines for nodelocked licences
- Download receipts and invoices from past purchases
- Update payment details for subscription licences
- Activate licence offline
- Add seats to a licence
- Add products to your account
- Cancel a subscription
Checked items are ready for you, unchecked are coming soon!
For the time being, please contact us for login details.
Blend Simulation
There are now 2 ways in which to blend between simulation and animation; before or after.
Before
There is now an option to blend between animation and simulation before recording!
Here are some more examples.
This will also work alongside Translate Motion = Soft
.
After
Ragdoll typically records your simulation onto a layer, and this layer has a Weight
attribute that you can animate to blend between simulation and animation.
But, most of the time, it isn't doing what you'd expect.
A new option has been added to the Record Simulation option dialog to solve this.
Here you can see the effect in action.
Stepped Simulation
Japanese anime, and 2D animation in general, is normally animated on 2's, 3's and sometimes 4's and sometimes at arbitrary times altogether.
Previously, Ragdoll was only ever able to produce 1 frame per Maya frame, meaning the animator would retroactively need to reduce the keys to only happen when animation happens. No longer!
Smooth input, Stepped output
In the simplest case, Ragdoll can be instructed to output simulation ever other or every third frame, or every fourth. Creating a 2D or stopmotion kind of look.
Stepped input, Stepped output
In the more complex case, consider this animation.
Notice how there are pauses between frames, and that keyframes are not distributed evenly. Some have a 2 frame pause, some a 5 frame pause. Here's what would happen if you were to try and simulate this.
Notice how the torso and especially the tail gets jerked around. Because during each pause, Ragdoll goes ahead and simulates it as though the character came to a complete halt. And then kicks off again when it moves, at a very high velocity.
You can now match simulation to when animation occurs, via the new Warp Time
menu item.
Now simulation only happens when the character actually moves. You can control the frequency and time delta of each frame by tuning the resulting animation curve.
Restore Time
Use Restore Time
to get back to a non-stepped simulation.
Freaky Time
Time is controlled via a normal animation curve, and there's no reason it cannot also go backwards.
Let your creativity out!
Time Method
Normally, during playback Maya will transition from one frame to the next. For example, from frame 1 to 2. But sometimes, when a rig is too heavy, Maya may skip a frame or two. For example from 1 to 3, without first visiting frame 2.
To Maya, the different in time between frame 1 and 2 is about 1/24 seconds, with a playback rate of 24 fps; that is, about 41 milliseconds. The difference between frames 1 and 3 is 83 milliseconds.
To Ragdoll, the difference is always 41 milliseconds. No matter the difference in Maya. Why does that matter? Well, consider this.
At frame 17, the character hits the ground. But what if we go to frame 17 immediately, and skip a few more frames?
Now the character hits the ground at frame 78! To Maya, 78 frames has passed; about 3 seconds. But to Ragdoll, barely a second has passed.
With the new Time Method
attribute, you can now choose to handle this in a realistic way instead.
Collision Group
You can now more easily manage which Markers collide, and which does not!
Create New Collision Group
Assign to two or more Markers to create a new collision group.
Add to Existing Collision Group
Select a collision group along with one or more Markers to add.
Remove from Existing Collision Group
Similarly remove Markers.
Multiple Collision Groups
Select multiple groups to visualise them together. They will each occupy a (customisable) color.
Merge Collision Groups
Assign to two or more groups to combine them.
Trajectories
You can now visualise the trajectories of your Markers via the Solver Display attribute.
Mass Independent Fields
Fields were introduced in Ragdoll 2022.02.14 to help apply environment effects such as wind and turbulence to your animations.
Forces are applied as they would in real life... which isn't always practical!
Consider this.
Here, as the character grows in size, so does its mass. As the mass increases, the effect of the turbulence force diminishes. Since the same force is applied to a now much-heavier object. Like if you pushed on a woodden door and then tried pushing a car; your muscles remain as strong, but the object is now much heavier.
With this release, forces are instead applied evenly regardless of mass, which should result is more control and predictability of your simulation.
You can revert to the old (realistic) behaviour by changing Force Mode
from Velocity Change
to Force
in the rSolver
node.
Multi Replace Mesh
Ragdoll supports 4 geometry types for collisions.
- Box
- Sphere
- Capsule
- Mesh
Assign to a control, and then use Replace Mesh
alongside any geometry to use this geometry for collision detection.
However!
Sometimes collisions are more complex and require multiple meshes to make up 1 physical collision shape. You can now achieve this with ease.
You can now select any number of meshes and use the combination of them as a collision shape.
Pin Constraint Pivot
You can now control where on a Marker to Pin Constrain it.
Hold
D
to edit the position of the rotate pivot
Attach Constraint Pivot
Like the Pin Constraint, Attach Constraints can have their pivots edited too. Especially useful if you are looking to attach two Markers at a specific location.
Quality of Life
Last but not least, a few minor things to make your life easier.
New Behaviour Names
The options for a Marker's Behaviour
attribute has been updated for more clarity.
Old Name | New Name | |
---|---|---|
Inherit |
-> | Use Group |
Kinematic |
-> | Animated |
Dynamic |
-> | Simulated |
The name "kinematic" is the technical term for when something is animated, so we figured we may as well call it what it is! A Marker set to Animated
is entirely animated, with no simulation applied. It may affect other Simulated
Markers, but cannot be affected by them.
Edits on Start Frame
Some things in Ragdoll can be animated, others cannot. Those that cannot can also not be changed on any frame other than the start frame.
This used to be a chore, and is no longer! Ragdoll will now automatically return to the start frame when it needs to, leaving you with less to worry about.
Symmetry and Undo
You can now undo both sides at once, as you'd expect!
Z-up Assets
You can now export assets from a Y-up Maya scene, and load it into a Z-up Maya scene! This means our default assets, which were made in a Y-up environment, will now load perfectly fine in your Z-up scenes.
Before
After
Linked Solver Crash
Many linked solvers could potentially crash Maya, no longer!
Deprecating Max Mass Ratio
Ragdoll likes when the masses of objects that interact are somewhat similar. A 60kg character sitting on a 100kg horse is 👌. But a million ton planet falling onto a 60g ant is less than OK.
To combat this, an attribute was introduced a while back called Max Mass Ratio
whose job it was to even out the differences ("ratio") between masses. But it didn't work that great, the simulation was no happier because of it.
So in this release, we are deprecating this attribute. It will still exist in your scene, and can be found at the very bottom of the Solver node in the Attribute Editor. If you find yourself needing it, let us know. If not, you have one less thing to worry about.
Restore T Key
There's an option to restore the functionality of the T key, and to change it to something else.
One-off bug
Ragdoll was reading values from Maya that were 1 frame too old.
Before
I'm stepping through the simulation, notice how the pelvis is set to Animated
(Kinematic) but how it doesn't actually have an effect until the next frame?
After
This has now been fixed.
Solver Update
The underlying maths behind your physics has been modernised to resolve subtle issues but primarily lay the foundation for new things to come. You shouldn't notice much of any difference, apart from subtle things like this.
- Before 600 boxes: 69-81 fps
- After 600 boxes: 71-84 fps (lots of independent rigid bodies)
- Before Wyvern: 82 fps
- After Wyvern: 79 fps (lots of connected and constrained rigid bodies)
Python API
For the Python folk out there, these members were added to the Python API.
from ragdoll import api
# Create a new group
group = api.assign_collision_group(markers)
# Add some more markers
api.add_to_collision_group(other_markers, group)
# Remove some markers
api.remove_from_collision_group(markers, group)