Doc:2.6/Manual/Physics/Soft Body

提供: wiki
< Doc:2.6‎ | Manual‎ | Physics
移動先: 案内検索

Soft Bodies

A softbody cloth uncovering a text. AnimationBlend file

A Soft Body in general, is a simulation of a soft or rigid deformable object. In Blender, this system is best for simple cloth objects and closed meshes. There is dedicated Cloth Simulation physics that use a different solver, and is better for cloth.

This simulation is done by applying forces to the vertices or controlpoints of the object. There are exterior forces like gravity or forcefields and interior forces that hold the vertices together. This way you can simulate the shapes that an object would take on in reality if it had volume, was filled with something, and was acted on by real forces.

Soft Bodies can interact with other objects (Collision). They can interact with themselves (Self Collision).

The result of the Soft Body simulation can be converted to a static object. You can also bake edit the simulation, i.e. edit intermediate results and run the simulation from there.

Typical scenarios for using Soft Bodies

A wind cone. The cone is a Soft Body, as the suspension. AnimationBlend file

Soft Bodies are well suited for:

  • Elastic objects with or without collision.
  • Flags, fabric reacting to forces.
  • Certain modeling tasks, like a cushion or a table cloth over an object.
  • Blender has another simulation system for clothing (see Clothes). But you can sometimes use Soft Bodies for certain parts of clothing, like wide sleeves.
  • Hair (as long as you minimize collision).
  • Animation of swinging ropes, chains and the like.

The following videos may give you some more ideas: [1], [2]

Creating a Soft Body

Soft Body creating

Soft Body simulation works for all objects that have vertices or control points:

  • Meshes.
  • Curves.
  • Surfaces.
  • Lattices.

To activate the Soft Body simulation for an object:

  • In the Properties window, go to the Physics tab (it is all the way on the right, and looks like a bouncing ball).
  • Activate the Soft Body button.

A lot of options appear. For a reference of all the settings see this page.

  • You start and pause a Soft Body simulation with AltA.
  • You stop the simulation with Esc.


Simulation Quality

Soft Body Solver panel with simulation quality settings

The settings in the Soft Body Solver panel determine the accuracy of the simulation.

Min Step
Minimum simulation steps per frame. Increase this value, if the Soft Body misses fast moving collision objects.
Max Step
Maximum simulation steps per frame. Normally the number of simulation steps is set dynamically (with the Error Limit) but you have probably a good reason to change it.
Auto-Step
Use Velocities for automatic step sizes.
Error Limit
Rules the overall quality of the solution delivered. Default 0.1. The most critical setting that says how precise the solver should check for collisions. Start with a value that is 1/2 the average edge length. If there are visible errors, jitter, or over-exaggerated responses, decrease the value. The solver keeps track of how “bad” it is doing and the Error Limit causes the solver to do some “adaptive step sizing”.
Fuzzy
Simulation is faster, but less accurate.
Choke
Calms down (reduces the exit velocity of) a vertex or edge once it penetrates a collision mesh.


Diagnostics

Print Performance to Console
Prints on the console how the solver is doing.
Estimate Matrix
Estimate matrix. Split to COM , ROT ,SCALE


Cache and Bake

Soft Body Cache panel with caching and baking settings

Soft Bodies and other physic simulations use a unified system for caching and baking. See Particle Cache for reference.

The results of the simulation are automatically cached to disk when the animation is played, so that the next time it runs, it can play again quickly by reading in the results from the disk. If you Bake the simulation the cache is protected and you will be asked when you’re trying to change a setting that will make a recalculating necessary.

Blender3D FreeTip.png
Beware of the Start and End settings
The simulation is only calculated for the frames in-between the Start and End frames (Bake panel), even if you don’t actually bake the simulation! So if you want a simulation longer than the default setting of 250 frames you have the change the End frame.


  • Caching:
    • As animation is played, each physics system writes each frame to disk, between the simulation start and end frames. These files are stored in folders with prefix “blendcache”, next to the .blend file.
    • The cache is cleared automatically on changes - but not on all changes, so it may be necessary to free it manually, e.g. if you change a force field. Note that for the cache to fill up, one has to start playback before or on the frame that the simulation starts.
    • If you are not allowed to write to the required sub-directory caching will not take place.
    • The cache can be freed per physics system with a button in the panels, or with the Free All Bakes to free it for all selected objects.
    • You may run into trouble if your .blend file path is very long and your operating system has a limit on the path length that is supported.
  • Baking:
    • The system is protected against changes after baking.
    • The Bake result is cleared also with Free All Bakes for all selected objects or click on Free Bake for the current Soft Body system.
    • If the mesh changes the simulation is not calculated anew.

For renderfarms, it is best to bake all the physics systems, and then copy the blendcache to the renderfarm as well.

About the caching and baking options and settings see more here.

Interaction in real time

To work with a Soft Body simulation you will find it handy to use the Timeline window. You can change between frames and the simulation will always be shown in the actual state.

You can than select the Soft Body object while running the simulation and Apply the modifier in the Modifiers panel of the Editing context. This makes the deformation permanent.

Tips

  • Soft Bodies work especially well if the objects have an even vertex distribution. You need enough vertices for good collisions.
  • The calculation of collisions may take a long time. If something is not visible, why calculate it?
  • To speed up the collision calculation it is often useful to collide with an additional, simpler, invisible, somewhat larger object .
  • Use Soft Bodies only where it makes sense. If you try to cover a body mesh with a tight piece of cloth and animate solely with Soft Body, you will have no success. Self collision of Soft Body hair may be activated, but that is a path that you have to wander alone. We will deal with Collisions in detail later.
  • Try and use a Lattice or a Curve Guide Soft Body instead of the object itself. This may be magnitudes faster.


Links