BM's Softbodies sandbox
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)
Knowing Newton's laws we'd expect a softbody set up like this
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.
not moving at all, unless we have a source of 'external' forces as:
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.
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.
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.
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