0
$\begingroup$

I'm currently working on a tutorial for a soft-body obstacle course, and I want the balls to go down into a funnel. However, when they land on it, they get stick to it, when I want them to roll down into the smaller hole in the funnel, go through it, and land on the plane below. enter image description here

enter image description here

enter image description here

I'm trying to solve this problem so I can keep working on making my own course, but that's something that's hard for me to get past.

Here's where I am in the tutorial I'm working on...

https://youtu.be/4gYsxqNJyu8?t=520

Here's my file...

$\endgroup$
4
  • $\begingroup$ By removing the Solidify modifiers, directly modeling a non-zero width (just extruded in Z-positive direction by 0.1) on the funnel, and recalculating normals (they were wrong after I made this modeling change, originally, I was able to get the balls to go through the funnel. I'm a little unsure if there's a nice way to get it to work with the Solidify modifiers on; maybe others know more. $\endgroup$ Dec 28, 2021 at 0:59
  • $\begingroup$ I was also able to get the balls to go through the funnel by just increasing the width on your funnel's Solidify modifier from 0.01 to 0.4. I suspect that 0.01 is too small, especially given the Physics > Sensitivity > Margin for the funnel is set to 0.04, and that the Solidiify's Offset is -1 (but I have not succeeded in getting it to work just by decreasing the Sensitivity Margin or by altering the Solidify offset). $\endgroup$ Dec 28, 2021 at 1:05
  • $\begingroup$ I tried doing that, but I'm more of a visual and hands-on learner, so I would like you to explain that better and use pictures to help explain the solution. $\endgroup$ Dec 28, 2021 at 1:16
  • $\begingroup$ The second suggestion I made is probably simple enough that it doesn't require any pictures: just increase your Solidify modifier's thickness from 0.01 to 0.4, and that should work. I don't want to post this as a formal answer because I'm hoping someone will come along with a more principled explanation for what overall combination of settings should be expected to work. $\endgroup$ Dec 28, 2021 at 1:25

1 Answer 1

1
$\begingroup$

So when physics don't do what I want, I make new physics-only meshes.

enter image description here

Okay, so first thing I did here was to look at the collider funnel. The solidify modifier on this was so thin that I'm pretty sure it was confusing the physics, and any softbody verts that made it through the funnel could never recover. So I just got rid of the solidify modifier.

After that, your vertex normals were backwards of what you wanted: we want the balls to collide with the top of the funnel, and if they blink through, we want them to get pushed back to the top of the funnel. So I recalculated normals inside on the funnel mesh. This pic is shown with "face orientation" enabled in the overlays.

After that, I still wasn't perfectly happy with the collision-- so I made a new collider. I recommend always thinking of your physics world as separate from your rendering world. The wireframe mesh is a slight duplicate of the funnel, raised up a little, with a slight lip created so the colliders don't get hung up on the edge of the collider. Then I can remove the collision on the original mesh, and set the new collider not to display in renders (and set it to a wireframe viewport display so I know it's just for physics.)

Few other things: You don't need rigid body on anything; soft body doesn't pay attention to that, only to collision. You should probably apply scale on your floor.

$\endgroup$
5
  • $\begingroup$ How do I make a new collider that fits what you described? How do I apply scale to the floor of my animation? How do I alter the mesh of the funnel to fit the new collider? $\endgroup$ Dec 29, 2021 at 13:33
  • $\begingroup$ Does this look like an improvement? Is there anything else I need to improve for it? There's still a bit of clipping. <img src="https://blend-exchange.com/embedImage.png?bid=LnPSm8eZ" /> $\endgroup$ Dec 29, 2021 at 13:44
  • $\begingroup$ I didn't look at the file. If it's good enough for you, it's good enough; if it's not, it's not. If there's clipping, then edit the collision mesh so that it prevents the clipping. You make a new collider by duplicating your existing collider and then editing it. You can apply scale with ctrl a. You alter a mesh by moving the verts in edit mode.... $\endgroup$
    – Nathan
    Dec 30, 2021 at 0:17
  • $\begingroup$ How do you duplicate a collider and edit it? $\endgroup$ Dec 31, 2021 at 2:05
  • $\begingroup$ It is a mesh. Select it, then shift D to duplicate it. To edit it, tab into edit mode and move verts around. $\endgroup$
    – Nathan
    Dec 31, 2021 at 2:21

You must log in to answer this question.

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