1
$\begingroup$

Been trying a lot of methods to simulate a ball falling on a trampoline or elastic kinda substance( square plane) with its corners pinned but haven't had any sucess yet. Really specific about the objects bouncing back after falling on the cloth, tried emmision particles but those didn't seem to work either. Would really use some help rn!

$\endgroup$
2
$\begingroup$

(Blend file below)

Particles and cloth reacting to each other - (bouncing is adjustable)

If you're dealing with just a single object, either limit the emitter to a single particle or simply animate/keyframe the object itself to follow the cloth up and down. (Bezier interpolation works best with cloth)

The cloth is pinned by it's outer vertices. When played, and with it's (cloth) structure slider set appropriately, gravity will make it sag, retract, sag etc at the center until finally coming to rest.

Once this is working as required, the cloth's motions can be 'Baked as Shapekeys' in the Modifier panel. (not the physics panel)

With that done, it's physics properties are lost and the cloth is ordinary mesh again but with shapekeys now stretching and unstretching it's vertices.

Add physics to this again but not as cloth, rather, just set it as a 'Collision' object this time so the particles will react to it as though it's hard ground which is sagging up and down. It's sags and bounces will therefore take the particles up and down with it.

With the cloth now shapekeyed you have control over when the sags and retractions take place by setting shapekey values between zero & 1. (Geometry --> Shapekey tab, (press " i " to keyframe each)

As each subsequent sag would be less than the previous, set that shapekey value to less than 1. If it's not to rise back to flat again, set the retraction shapekey values to something above zero.

Once the timing of the sags look normal, go into the Dopesheet and select all the shapekeys, then slide them left and right so the first sag coincides with the arrival of the first particles. (See note below)

Because your shapekeyed mesh has been set as 'collision' object they won't (or shouldn't) go through it and will follow it up and down as it sags and retracts.

-===============-

A few points should be made here...

1.

When applying the cloth's sags as shapekeys, it's the most extended sag that get's recorded. That's where the cloth will go down to when a shapekey value is set to 1. Anything between 0 & 1 will sag the cloth to some point between fully sagged and fully retracted.

2.

Particle physics work on each particle's origin-point, not their mesh, meaning they usually half bury themselves into a collision object as a result.

3.

If you view from the side, you'll notice in this instance that the particles are not actually settling at the cloth but a significant distance above it.

There is an effective work-around that cures notes 2 & 3...

With the emulated cloth behaving as required and timed correctly, duplicate it and check that the copy doesn't have physics or cloth properties, but does inherit the original's shapekeys and therefore should be sagging and retracting in synch with the original.

Because it has no physics it's only animated scenery and not going to affect the particles.

Make the active cloth (collision object) invisible.

You can raise the (non-physic'd) duplicate so particles will actually sit in it's deepest sag and bounce up and down with it.
(For newbies, the invisible and real collision 'cloth' is still controlling their behavior)

-============-

Note -

It may be that the first few particles don't land in the cloth's center and therefore the first sag will appear to be self motivated.

The solution is to make a duplicate of the particle object (cube) in layer 2, move that to layer 1 and rescale it to the same size as the particles.

Animate this to fall down into the center of the sagged cloth and bounce up and down with it by making it follow the cloth's rises and falls. If that's too much bother, have it conveniently disappear behind the others after it's fall.

$\endgroup$

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.