01-02-2024, 10:37 AM
(This post was last modified: 01-02-2024, 10:42 AM by josemendez.)
(01-02-2024, 08:54 AM)creekat Wrote: I figured that maybe this is how a softbody works and that there is no workaround, but I would like to ask just in case.
Hi!
I'm afraid that's the case. Softbodies are made of a network of particles held together by shape matching constraints, which keep the overall shape of each particle's neighborhood. However this shape matching is local to each particle (not global for the entire shape), which means if you force the softbody into very large deformation (close to squashing or turning it inside out), it will keep that deformation since each particle only has information about its immediate neighborhood, but not the entire object. This applies both to 2D and 3D softbodies.
The other relatively common method for making a softbody is using simple springs to hold particles together, which is less resilient to this problem as there's no shape matching involved at all.
For specific shapes such as a circle, you can write some custom code that applies a force to all particles away from the circle's center, which may help in recovering the object's shape after being squashed. See: http://obi.virtualmethodstudio.com/manua...icles.html
Another, more involved solution would be to add your own shape matching constraint involving all particles in the softbody. See:
http://obi.virtualmethodstudio.com/manua...aints.html
kind regards,