softbody selfcollision

I did a little test with the new softbody self-deflection feature in the latest cvs-build. Cool! My goal is to make a scroll that unscrolls. Maybe somebody can point out to me what “Ball Size” means and what effect the different calculations have (Man, Av, Min…)
http://img515.imageshack.us/img515/8038/softscrollkc8.th.gif

First you have to know the 'selfcollision" is a cheap ( in terms of how much CPU it takes ) trick to fake real self collision. The modell is, that each vertex is sourrounded by an elastic ball and the balls are bouncing off another. That saves a lot of complicated face triangle intersection calculations and more.
However. How big should that balls be?
Making them too small allows self penetration … making the too big makes the visible gap even bigger.
To help you there, are 3 automagic modes
1 Average length of the edges attached to the vertex
2 Minimum length of the edges attached to the vertex
3 Maximum length of the edges attached to the vertex

With “man” oh wonder, you can enter the ball size manually

BM

Oh course this is nice to have…

Only thing I am wondering now is that to increase the accuracy of the self collision you need to subdivide the mesh so the edge length decreases (so the ball size can decrease). Now you have a whole load more polys to simulate and a whole load more of these virtual balls to collide. In such a case, would be balls method still be advantageous over face-triangle intersections using a lower poly mesh?

Koba

thanks BM for the explanation, that helps to understand! Koba: is it not so, that you have subdivide your mesh quite a bit to get a natural softbody animation anyway?

is it not so, that you have subdivide your mesh quite a bit to get a natural softbody animation anyway?

Yes. But I can envisage a situation where you don’t mind a lower quality simulation (ie less polys) but really want to avoid self-collision (without having the “fabric” magically levitating over itself).

Koba

i was wondering if … too…
try the CEdge CFace option in a current CVS version and you will know :slight_smile:

well … to be honest … the last word is not spoken … with a more clever space subdividing system magic could be done
… how to get it? … join the coders club!

BTW i did add a BSP algo to speed up things remarkable

BM

That is great news bjornmose!

It really is great that you have kept improving Blender softbodies - especially now that cloth doesn’t seem to be making it for the next release. So this is just to say that we appreciate your work!

Koba