1
$\begingroup$

I wanna do a test on an square (softbody) where the top surface is fixed and i want to apply a force to the bottom surface toward down to see the deformation of object due to the applied force.

Does anyone know how to do that? Thank you in advance!

The description

The result is likely to be something like this:

enter image description here

Cheers

$\endgroup$
14
4
+200
$\begingroup$

So there are a few questions here. First, how to anchor the top of the soft body?

Soft body physics are anchored through the use of the "goal" trait, which is by default set to 0.7 strength for all verts-- so once you start using goal to pin soft body verts, you might find that your soft body physics change.

Create a vertex group for your mesh. Assign the top vertices to that group, at weight 1.0. Now, on properties/physics/soft body/goal, specify your vertex group as the goal vertex group, then in soft body/goal/strengths, set the default weight to 1.0. Your assigned verts will no longer move with the sim-- they'll act pinned, as with cloth pinning.

This will prevent the other vertices in your soft body simulation from having any goal weight. You can assign the other vertices to your goal group (at a lower weight than 1.0), or you can set the "Min" goal in soft body/goal/strengths.

The next question is, how to apply a force to a soft body mesh? There are a number of different ways. You could set collision type to "face" and then use a collider to press down on the mesh. You could use a force field. You could just use gravity.

What you describe in your comments is the desire to exert exactly 5 Newtons on your bottom verts. That's the force necessary to accelerate 5kg by 1m/s/s, or to accelerate 1kg by 5m/s/s. Using default Blender scales, and default soft body mass settings of 1kg, the simplest and easiest way to exert this force is via gravity. In properties/scene/gravity, set your gravity vector to 0, 0, -5.0 and your softbody's 1kg verts will be accelerated downward at a force of 5 newtons.

But maybe you don't have constant mass for your soft body. You can use a force field to do the same thing, just without quite as much precision. Make a new force field, of "force" type. To make it directional rather than radial set the shape of the force field, in properties/physics/force fields/settings/shape, to "plane". Then, in force fields/falloff/Z direction, choose an axis for the force field to operate along.

But what strength to use to represent 5 Newtons? Tests on 1kg and 5kg rigid bodies suggest that a strength of 120 is about right for 5N at 24 frames per second. If you want to get more exact, remember that the distance that an accelerating body travels is equal to at^2/2, where a is acceleration and t is time.

But if you want to know what it's going to look like after that? The answer is, it depends not only on your forces, not only on your soft body settings, but on your vertex density and your topology. Soft body physics are not real physics. Even though I did my best to answer your question, if you're wanting exact numbers for your forces, you shouldn't be using Blender's physics for your problems. Blender's physics are tools to create pictures. They bear only the tiniest resemblance to actual, real world physics.

$\endgroup$
3
  • $\begingroup$ Hi Nathan, thank you very much for the detailed description, i understand what you said. For the gravity method you mentioned, is that possible to make the bottom face not change its shape during the process? $\endgroup$ – Mengzhe Lyu Oct 6 '20 at 21:38
  • $\begingroup$ @MengzheLyu You could adjust spring strengths on the soft body, possibly in conjunction with vertex groups to control differences in spring strengths, which will never give you zero deformation on the bottom face but can reduce it, or you could use an armature and bone constraints to translate the "average" transformation of a non-rendering, physics-deformed face onto a rendering, armature deformed face. $\endgroup$ – Nathan Oct 6 '20 at 21:50
  • $\begingroup$ This is a great answer. The concave deformation in the original question is due to cross-links in the internal structure of the material and as you say, the Soft Body physics is not the right tool to accurately model that (certainly couldn't be done with only the outer surface modelled in the mesh). $\endgroup$ – Rich Sedman Mar 2 at 7:58

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.