0
$\begingroup$

Yo wassup,

I dealt a lot of time in the past few months dealing with softbodies, but I still couldn't figure the following out: Why is a softbody unable to go back to its default shape when previously deformed through shapekeys? I included an example below - while it looks like it's back to the original shape, you'll notice a tiny offset between the baked and original shape. No matter what I tried, that offset doesn't disappear.

The green object is the original object deforming from a flat plane to this mess with a shapekey - the mess-shape however is the Basis-shape and the flat-shape a shapekey, not the other way around. The red object is the same but with a softbody modifer. enter image description here

My current understanding is that when working with shapekeys, the goal-property tries to get the softbody into the shape of the currently active shapekeys (or modifiers), while the edges-property only pays attention to the original shape (Basis-shapekey - or probably just the vertex spring-distances towards each other at that Basis shape) and sees the goal as exterior forces trying to deform that shape. This explains why, when using both goal and edges with shapekeys, the bake will look different to what it looks like at the original.

Knowing that would mean that if you actually want your object to go back to the Basis-shape after some deforming, you just need to set all shapekeys to 0 at your last bakeframe and have both goal and edges active (edges in case you're still working with collision objects), since both the edges want to have the basis-spring-lengths again and the goal wants to assume that shape anyway, since no shapekeys are active. But I don't get that, instead I get a shape which looks almost similar but still isn't actually the same (as shown in the pictures). They both want that shape, but it still doesn't fully appear. Why is that and/or how do I fix this?

Cheers.

Some more examples

(It also still doesn't work if you turn off all field weights and set the weight to 0kg, and setting the goal to 1 will make it completely ignore the edges and thus also collisions - I only want it to fully deform if there are no collision objects preventing that. If you let it bake for some more frames after all shapekes are all already inactive it will only get a bit better, and that only until a certain point after which it won't change at all anymore.)

$\endgroup$
1
$\begingroup$

Alright figured it out myself, you need to tweak the goal damping value. Not too low and not too high.

enter image description here

Used a value of 1 for this one and it now looks exactly like the original. You can see that the original is also still there, since there's a small shading intersection where the green shines through on the right.

Small update: I only made a few tests but it seems that the scale of your softbody also influences if and how fast it can assume the default shape again: The bigger the better.

| improve this answer | |
$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.