BM's Softbodies sandbox

Softbody general

What is a softbody?

First let's look at what happens when we turn an object to softbody.
1. Every 'vertex' of the object becomes a free moving particle following Newton's laws

Newton's laws in a nut shell (read object for particle here)
I. Every object in a state of uniform motion tends to remain in that state of motion unless an external force is applied to it.
II. The relationship between an object's mass m, its acceleration a, and the applied force F is F = ma.
III. For every action there is an equal and opposite reaction.
note: We don't follow III. that strict and will allow 'bolted' particles to stay in place.

Knowing Newton's laws we'd expect a softbody set up like this
not moving at all, unless we have a source of 'external' forces as:

1. Friction

When ever a particle is surrounded by anything (e.g. air, water, oil .. ) any difference in velocity between the particle and the surrounding will result in a force trying to reduce the difference. It does not matter if the particle is blown away by the wind or the particle is stopped by resting air, it's the relative motion causing the force. The friction in the softbody tab can be associated with viscosity of the surrounding the particle is moving in.

2. Gravitation

Global force in z direction, not depending on velocity or location.

3. Force fields, on particle tab

There are forces which only depend on the location of the particle.

4. Goal links

Magic springs that keep the particles in touch with the mesh they were created from.

5. Edge links

Springs that keep the particles in touch with each other.

Softbody edges

In the softbody world vertices of meshes, lattices, curves .. are treated as particles having a mass. Their movement is determined by the forces affecting them. Beside other forces the individual particles can interact with another along edges using a physical model which is very close to shock absorbers used in cars. The working parts are:
1. A spring trying to keep the particles at a certain distance. How hard the spring tries to do that is controlled by the softbody parameter 'E Stiff'.
2. A damping element to calm the movement down. The resitance the element builds up against motion is controlled by the softbody parameter 'E Damp'.


spiro004.blend (weird *.blend with some work arounds to demonstrate how softbody edges work)
i guess. adding a little python code to this would be a nice introduction to 'harmonic oscillator'

Shock Absorber in motion made with the above blend.

Softbody goals

There is another 'shock absorber' at each vertex of the softbody connecting the associated particle with the 'original' position of the vertex. So this defines a 'goal' the particle tries to reach. The strenght of the springs here however is modified by either object global settings in the softbody panels or weight painted to a vertex group.

A very special goal relation is obtained when the weight of the vertex is exactly 1. In the case the particle is "bolted" to the original vertex. The motion of that particle is the same as if it was no softbody at all.
Defining goal weights smaller than 1 will cause the softbody to jiggle around it's "rest position".

Said that, it's not very surprising that a weight of 0 breaks the goal 'shock absorber' completly.

link to other stuff