Deflecting a softbody

I’m just learning, and I’m trying to understand how to get an object set as a deflector to interact with an object set as a softbody.

At the moment I have two mesh obects. The softbody mesh is set to be really loose, like a piece of cloth, and it drops onto the other mesh, which is hard and is set as a deflector. The normals face out from the hard mesh, and it has a damping of 1 so I expect the softbody mesh to ‘drape’ itself over the hard mesh as it falls. Instead it passes straight through.

Can anyone tell me what I’m missing?

Cheers!
Stephen

A good tutorial. Softbody deflection is not a thing you achieve with a few buttons.

There have been some threads about softbodys in the last few weeks, expecially about the new features in the upcoming version 2.43. So just use the forums search, and you will find enough material to guide you.

Regards

Thanks for the answer, I had a search but didn’t find anything specific so I went back to Blender and I think I got it. I had the two objects on different layers. They only interact when they’re on the same layer.

Cheers!

Well to be exact they have to share at least one active layer.
I usually don’t like to be a smart ass BUT this is a very important feature, because it gives you the possibilty to define a low poly deflector while baking that is not on a visible layer at render time. That can save you loads of time while baking. /* hint … hint … smile */
BM

Aha! I didn’t understand that at first so I looked it up. Objects can appear on more than one layer! Beeootiful.

I can see why you’d want to reduce the poly count for baking, but I’m not up against that problem for the moment. I got my Softbody mesh to avoid my hard mesh with a bit of tweaking. But now I’ve animated the hard mesh, and although my Softbody mesh is still interacting with my ‘hard’ mesh, it is also passing through it to a certain degree. No amount of “Outer” setting changes this.

Is it necessary to make all animations really slow so that Softbodies are given chance to interact with ALL inbetween positions of the hard mesh?

No. You need an invisible, simple object for the collision. No matter how much you tweak the settings, you will always get at least a bit of penetration.

Scale the collision object a bit larger than the rendering object.

The softbody collision detection suffers the ’ tunnel effect ’ indeed, that is : a fast colliding object can pass through the softbody without ever been ‘seen’.
The next version (2.43) and its RC3 have a new feature build in to interpolate the collider positions on a sub frame level and you can help the solver by forcing at least N substeps a frame.

Still since only the vertices interact ( edges are possible in RC3 too ) sharp peaks / creases of the collider are likely to peek through.
This is why in 99% of the cases a invisible proxy collider is unavoidable.
BM

Before I’m going to start long tests, please can you give some more words of wisdom from the wizard :smiley:

  1. Why does the Softbody Button appear for Cameras, Lamps, Armatures and Meta-Objects?
  2. Collision detection is done between the Softbodys Vertices (or Edges/Faces) and the Deflection objects Faces? Does the amount of vertices of the deflecting object matter? E.g. Planes do deflect quite well, even if they only have four vertices.
  3. Does Choke only govern the force by which a vertex is pulled away in case of a collision? In which direction is the vertex pulled and by which force?
  4. What does Ev.M. Stack mean? How could a collision object be picked from the modifier stack?

I have made two softbody animations, I think the selfcollision works quite well.
http://upload.wikimedia.org/wikipedia/commons/a/aa/Blender3D_HiddenTextSoftbody.ogg
http://upload.wikimedia.org/wikipedia/commons/d/de/Blender3D_WindConeSoftbody.ogg

  1. because it would have been extra work to turn it off, and they do no harm there

  2. Collision detection is
    Vertices and ( since 2.43 edges even faces but that takes ages) on the softbody side
    Faces extruded to small prisms on the collider side.

    Said that it should be clear that there is no use in subdividing a plane to smaller faces
    unless you really add geometrie.

  3. Choke only becomes active in the case of intrusion. The face normal defines inside and outside. In the intrusion case a exponential raising force along the face normal is applied. Choke defines a kind of viscosity, otherways the vertices would end up miles away.

  4. To have it subsurfed for example. Some users wanted to have it.

Thanks a lot for the explanations!

Though I do disagree with you here, only usefull options should IMHO appear on the panels.

And my appologies to stephband for hijacking his thread.

No worries there at all!

I still have a problem, though. I’m dropping a Softbody ‘cloth’ onto an upwards moving ‘ball’ object. Even when I create an invisible, animated proxy object in front of the ball, the cloth drops through that and then drops through the ball itself in the following frames. I still don’t get how to make the cloth get ‘carried’ upwards by the ball.

Are the proxy objects you guys are advising unanimated (stationary)?

Do you I have to animate some vertices on the cloth to get it carried upwards?

Get yourself version 2.43,
http://www.blender.org/cms/Changes_since_2_42.771.0.html

and see one of the examples on bjornmose’s homepage. http://mosebjorn.altervista.org/newsb/

The AEROFUZZY File.

He uses a cube to collide, but this doesn’t really make a difference.

This is in the moment the best documentation you will find on that (at least in english…).

Hope that helps

That’s beautiful. Thanks to both of you for your help. Cheers!

Me apologizes for hijacking too …
and I’d agree on SoylentGreen statement to disagree.

Well when coding blender most of us don’t have a coding ‘bimbo’ at hand, but if i had i’d tell him:
look at ‘buttons_object.c’ to get things nice there. (say bye to winers, hello to coders)
tsk
May be i’ll fix that, if i was bored or if i can stop thinking about ‘how to join physics engines in blender to get more bang for less CPU cycles’
bm