Overassigning, Huge Stiffness and Huge Mass

Branching off from https://forums.ragdolldynamics.com/t/record-simulation-problem/1352/10 for discoverability and searchability.


Despite simulating ok, and despite recording ok, there are a few red flags in the abovesetup that I’d like to touch on for future readers.

1. Overassigning

Consider what parts of your character you want to animate, and assign to only those. Sometimes, this can be just a tail. Sometimes, just the upper body. But most of the times, there will be joints and controls in your character that are superfluous in a simulation.

In this case, there are 5 Markers that serve no apparent purpose. On the head, there are two additional Markers called “neck2” and “neck3”. My guess is that these exist in the original motion capture or rig joint hierarchy, and serve a purpose there. But for this physical creature, they are attached as though they were cancers or additional limbs. And they would move as such.

Like any good doctor, removing these would have a net-positive impact on your simulation.

2. Huge Stiffnesses

Generally, huge values - those beyond 10x of their default - is a symptom of a problem.

For example, some limits have a huge stiffness value.

This would suggest that the limits do not appear strong enough, and the intuitive solution would be to make them stronger. But why are they not strong enough? How is it that the default assets do not need such values, and still appear to respect their limits?

Let it remind of you this scene from Futurama.

https://content.ragdolldynamics.com/a5e7deda-4290-4a2c-ae7c-739ac7603d32.mp4

Similar situation, clear intuition. But instead of turning up the heat he should have lowered the cold, and the same often times apply to Ragdoll - and in fact any kind of simulation in any other software, both real world or digital.

In this case, I expect the reason Stiffness needs to be this high is related to the next red flag.

2. Huge Gravity

Now this is one that should never need to be anything other than Earth gravity, unless you want your character to appear as though they are on a different planet.

There are artistic reasons to tune this value, but this scene does not strike me as anything but a realistic human character on our own planet. But why is the value high? Sometimes, to counter some other issue; you want the overall motion to move down more strongly, so you crank up gravity. Intuitive.

But then Time Scale is set to 0.5, and now things get complicated. If gravity pulls your character 5x faster to the ground (-5000 cm/s^2 as opposed to -982 cm/s^2) , but time only moves at half-speed, what should we expect? Maybe 2.5x the gravity? Except forces are also accumulated at 0.5x the time step, meaning they double up; forces like contacts and limits.

Einstein would struggle to understand what should happen here, so your best bet is to leave Gravity and Time Scale at their default values at all times, unless you welcome their artistic (i.e. unrealistic) effect.

3. Huge Density

This one is most interesting. Some Markers have densities of up to 900 (!). What does this mean?

Let’s look at the intuitive case.

So far this make sense. Assuming these boxes are made of the same matter, e.g. wood or water, then the bigger box should weigh more. Sensible.

So what does “density” mean? Density is a multiplier of the volume of an object to determine its final mass. That is, if one box has 2x the volume of the other, than a Density = 0.5 would make it have the same mass.

Here’s a riddle for you.

  • “If the box is 0.5x the size, how much lighter is it?”

Is it 2x lighter? 10x lighter?

Let’s find out.

Based on this simulation, we can surmise that a box with Scale XYZ = 0.5 has a volume 8x smaller than the box with Scale XYZ = 1.0. Is there any scientific backing for this? Yes!

  • Box One: 1 x 1 x 1 cm = 1 cm3 (cubic centimeters)
  • Box Two: 0.5 x 0.5 x 0.5 cm = 0.125 cm3

And 0.125 is 8x less than 1.0.

You might then ask "why is the middle board wiggling, shouldn’t it produce an identical result to when the boxes had the same size and density? It should, until you realise that because of the small scale, the big box also reaches the board ahead of the small one, causing a slight tilt.

Now, what should we expect from a Density = 900?

Simply put, it does not compute. There is nothing on earth capable of interacting with a difference in densities this great. It’s as if you turned the box into a black hole.

There are solvers out there capable of simulating this scenario, scientists use it all the time to figure out the origins of the Big Bang. But Ragdoll is not one of them, and the character in this scene does not need it.

Summary

Unfortunately, each of the three issues listed affect each other. So it can be challenging to zone in on exactly which is to blame. But, what you can do is think twice whenever you find yourself needing to crank a value past 10x its default. “Is there a value I can reduce instead?” should be your first thought. And usually, there is.

Hope it helps, and let me know if you have any more questions! :partying_face: