Thanks for suggesting this! behaviours and pose spaces are the most complicated parts to explain and is something I’m actively looking for better way of communicating. Both through attributes and attribute names or tutorials.
I started typing up a reply, and I’ll leave this below. But it deserves more attention, so I’ll revisit this in the next few days with a better answer.
Inherit v Dynamic
First things first, when we say that a marker has a Behaviour = Inherit
that means it will “inherit” whatever Behaviour
it’s parent group has, which is typically Dynamic
. So for the remainder of the text below, Inherit
is equal to Dynamic
.
Next, let’s consider what blending between Kinematic
and Dynamic
means.
Here’s blending between two positions with a Dynamic
behaviour.
And here’s blending between the same two positions with a Kinematic
behaviour.
Both have the same start and end positions, and are animated to transition between frames 10-20.
In the Kinematic
case, things are simple. We know where to start, and where to end. Our animation curve is in control over the percentage between these two positions.
In the Dynamic
case however, things are not so simple.
We know the starting position, and we know the end. But we can’t simply interpolate between these positions anymore. Not even in this simple case. Instead, Ragdoll looks at the start and end positions and tries to figure out “what force can I apply to this real-world box, with mass and momentum, such that it takes me in the direction of the target position?”.
In the Kinematic
case, there is momentum, no mass, no constraints or joints and no obstacles. So it’s trivial to figure out how to get 50% along the way. Or 25%. Or 99%. But also notice how in the Dynamic
case, we don’t actually end up at the target position by frame 20. It takes another 20 to 30 frames to actually arrive.