Skip to content

2021.01.15

The gift that keeps on giving, the highlight for this release is Dynamic Control 3.0!


Dynamic Control 3.0

Another step forward for Dynamic Controls.

Default Capsule

Ragdoll now defaults to the newer Capsule shape type for dynamic controls. It's faster and applies more generally to most rigs; even those that do have NURBS curves wrapping around the underlying character geometry.

Before

ragdollshapecapsule1

After

ragdollshapecapsule2

Automatic Multiplier

The previous release introduced Multiplier Nodes. This release add a multiplier to each new dynamic control chain per default, on the root control, which means you can now do stuff like this!

ragdolldefaultmultiplier1 ragdolldefaultmultiplier2

Centralised Blend Simulation

Previously, to blend between animation and simulation you needed to select the controls to blend and edit each individually. But it's rather uncommon (and probably not very useful) to want independent control over each blend.

In this release, there is 1 central Blend Simulation attribute on the root dynamic control. This can be changed in the Options, but will probably disappear unless someone says they like it and wants to keep it!

ragdollcentralisedblend

Smart Tip Length

Previously, Ragdoll wasn't able to figure out how long to make the last control. Now it borrows length, radius and orientation from the parent capsule, which should be what you expect for the majority of cases.

Meaning you can now expect this.

Before

ragdolltip_before

After

ragdolltip_after

You can change the shape type after creation, and modify the default value in the options dialog.

image

Transparent Root

The first selection of a dynamic control chain is passive, and it used to also collide with the first child. But, most of the time, that root isn't useful as a collider. It would be a global hip control or some particular shoulder/clavicle gizmo.

So the root is now set to Collide = False, meaning this is now ok.

ragdolldefaultcollideoff2

You can still enable it afterwards if you'd like.


Convert and Restore

I've merge the Convert Rigid and Convert Constraint buttons into the rigid and constraint creation buttons.

image

Convert Rigid

Turn a passive into an active rigid, or vice versa.

  1. Select active rigid in viewport
  2. Click Passive to convert it into a passive rigid

convertpassive

If it's already passive, nothing happens. If you wanted to make a passive rigid active, you know what to do.

Convert Constraint

Turn a Socket Constraint into a Hinge Constraint, or any other type, on-the-fly.

  1. Select any constraint
  2. Click Socket to turn it into a socket constraint, regardless of what it was

convertconstraint

Restore Constraint

Sometimes you just want to start from scratch. And using the same convert feature you can also restore a constraint to its original settings.

  1. Select any constraint
  2. Click any constraint type

restoreconstraint


Passive Grayscale

Spot passive rigids by their colors, now all passive rigids are gray.

That means..

  1. Active rigids are multi-colored
  2. Passive rigids are gray
  3. Controls are blue

grayscalerigid


Select All

Sometimes you want to make bulk changes to all rigids or all constraints at once. You could select each of them, or you could turn to Python and say..

cmds.select(cmds.ls(type="rdRigid"))

Now there's a menu item for it too!

  • With nothing selected, it'll select all rigids or constraints
  • With something selected, it'll filter that selection for just rigids or constraints

That means you can either find everything all at once and make great big changes, or you can zone in on a particular hierarchy or character and affect all rigids or constraints in just that hierarchy!

ragdollselectall

Fire Wolf rig courtesy of Truong CG Artist