So basically, I'm trying to add a softbody to an object (well, a curve, but same difference as far as I know). But when it's NOT moving, I want it to be in the shape I modelled it in (basically a sort of S). Then when it moves, I want it to bend and follow through on the movement- Then when it's still, go back to that original shape.

I don't think images would really help, so I hope this is enough information. I've been messing with settings all day and I'm scared it's impossible, that S is destined to just... Droop down... So if anyone knows how to do this, please answer!

EDIT: Okay, adding images now after a comment. I've recreated the issue without the entire model for simplicity, and will include the Blendfile for the recreation. I'm sorry for not doing this initially, I'm new to asking forum questions.

So here's how it looks by default, and how I want it to look when it's NOT moving. Basically, the resting position. It's hooked to the empty which is parented to the plane (would be parented to a bone in the model I'd use this for).

enter image description here

I added a softbody to it (simulation is sped up significantly so I don't have to run it long to get the resting position), and it does this.

enter image description here

I've tweaked with a lot of settings, to no avail. The closest I got was turning the mass down as far as it'll go without disappearing (0.02 kg), but it doesn't fix it.

enter image description here

Here's basically what I want, in drawing form.

enter image description here

  • F.1: Resting position
  • F.2: The plane moves to the side. The hooked end of the curve stays where it is, but the other end drags behind.
  • F.3: The momentum of the curve pushes it forward even as the plane stops moving.
  • F.4: The curve returns to resting position pretty quickly (minimal wiggling).

I don't want to animate this manually, because in the actual model there's going to be at LEAST 9 of these, probably more, and since they're controlling hair (other hair methods have not given me the effects I want so this is how I have to do it, it would work perfectly if the curve was working) it's pretty laggy to position manually. The real model file is extremely big which is why I'm using a recreation for the question.

Here's the blendfile for the recreation pictured here, I couldn't find a way to include it other than Sendspace so I guess it'll expire in 30 days, I'm sorry I'm not good at this stuff: https://www.sendspace.com/file/f1t9nz

  • $\begingroup$ if you don't want it to drop down - turn off gravity. And if you want it to bend - use the simple deform modifier and animate it. For just bending no softbody is needed at all. Or you improve your question and tell us in detail (or better with screenshots) what you really want to do.... $\endgroup$
    – Chris
    Sep 13, 2021 at 5:10
  • 2
    $\begingroup$ you could also hook its vertices to move its vertices the way you want afterwards $\endgroup$
    – moonboots
    Sep 13, 2021 at 6:26
  • 2
    $\begingroup$ Images will help, specifically, what have you tried with description how it differs from what you're trying to achieve. $\endgroup$ Sep 13, 2021 at 8:57
  • $\begingroup$ so basically you want the way you modeled it to be it's resting position that it tries to go back to. $\endgroup$
    – Millard
    Sep 13, 2021 at 16:13
  • $\begingroup$ @Millard Yes, that's exactly what I want. $\endgroup$
    – SCurveGuy
    Sep 13, 2021 at 16:28

1 Answer 1


Crazy cloth pressure solution

I'm pretty weak at physics, so posting this before someone comes up with a boring solution of simply goal vertex group having weight proportional to distance from the beginning of the curve...

  1. Convert the curve to mesh.
  2. Select starting vertices (in my case a few embedded inside the block) and add them to vertex group PIN.
  3. Extrude along Z axis some small distance. Add newly created vertices to vertex group HIDE.
  4. While messing with vertex groups, add an empty group SHELL.
  5. Add Solidify modifier to the object, so it has roughly square cross-section.
  6. In Physics tab add Cloth modifier:
  • Quality steps: 25
  • Speed multiplier: 5
  • Air Viscosity: 5
  • Stiffness > Shear: 55
  • Stiffness > Bending: 33
  • Pressure: 100
  • Shape > Pin Group: PIN
  • Field Weights > Gravity: 0

Now to remove added thickness:

  1. In Solidify modifier, Output Vertex Groups set Shell to SHELL.
  2. After Cloth modifier add Mask modifier, set Vertex Group to SHELL Invert.
  3. ShiftD Duplicate the Mask modifier, change Vertex Group to HIDE (keep Invert enabled).

  • $\begingroup$ Oh my gosh this is amazing, thank you so much!!! Since I needed an actual curve (a curve guide field for hair), I want to add a little bit more on what I did for anyone in the future reading this with the same issue. I did what this guy shows here, as it's EXACTLY how I wanted it to work, but I copied the original (path) curve and only made one into a mesh. Then I took the original one, and moved empties to its vertices. I vertex parented the empties to the closest part of the mesh curve, then hooked the original curve to those empties. The result is perfect and saved my project! $\endgroup$
    – SCurveGuy
    Sep 14, 2021 at 3:20

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .