0
$\begingroup$

I have an issue with the physics system (as you can see in the title haha).

The problem is : I have an animation where an object (dynamic) rebound on a surface (passive - animate). After a while, the surface drop down rapidly. At that exact moment, I want to activate the animation data of the object to go down with the surface.

I already tried to switch between both of the options (dynamic - animate) and animate the objectf with keyframes and no success.

I already tried to put a constraint (copy location) and no success...

Do you have any suggestions? thank you!

$\endgroup$
0
$\begingroup$

Detail - Method 1 -

Switching from Dynamic to Animated doesn't come without it's problems. There is a workaround but it's proven not overly stable in my own projects. There are two suggestions here and the Blend file that demo's method 1.

I did this twice to make sure it wasn't going to act up...

Before setting the physics and at frame 1 a "Child-of" constraint is placed on the Monkey with the slab as it's target.
The "Set Inverse" button is clicked on and the constraint's Influence slider set to 0. The 'Set Inverse' may have to be clicked on again AFTER the influence is adjusted.

The timeline is then taken to frame 76, which is well after the collision and where the Monkey's rolling motion is about done. At this frame the constraint's Influence slider is keyframed again with a value of 0.

One frame on from there (frame 77) the influence slider is keyframed yet again, this time to 1.

With that done and when played, the Monkey should fall and hit the slab, bounce around and when the slab also falls, follow it down.

It worked first time in my version (2.77a) and it may well be the order in which the constraint and physics are used that decide if it's going to act up or not. Note, I did the 'Child-of' constraint first.

An advantage of this method is that the physics are still doing their thing whilst the slab is falling and even after it comes to a stop. i.e. the Monkey is still rolling around.

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

Method 2 -

A reliable alternative should things not go according to plan is to visually switch over to a duplicate monkey which would be parented to the slab outright from frame 1.

There'd be no hangups between the two constraints and the 2nd Monkey follows the slab down, unimpeded.

Detail -

Do the physics and once happy, at frame 77 when the Monkey's rolling has all but stopped, duplicate it and IMMEDIATELY clear the copy of physics and all animation. Select it again and check the Dopesheet to make sure nothing remains. Physics have a habit of hanging around and leaving a Dopesheet strip(s) even after it's supposed to have been cleared. That strip has to be deleted!

With the 2nd Monkey now free of all constraint and therefore stable, we can visually switch over to that at frame 77 in the Outliner. Their respective eye and camera icons can be keyframed to switch the original OFF and the duplicate ON.

Move back to frame 1 and do the inverse. The original to be ON, the copy OFF.

At frame 77 both monkeys will be perfectly aligned and the switch-over therefore undetectable. Monkey 1 would be seen to fall and bounce, Monkey 2 following the slab down.

Another more complex example of this is demonstrated in the video at the very bottom of this link - How to keyframe child of constraint in and out

| improve this answer | |
$\endgroup$
  • $\begingroup$ Thanks a lot! It works perfectly! $\endgroup$ – Anthony Trépanier Oct 21 '19 at 15:03
  • $\begingroup$ No probs mate.. $\endgroup$ – Edgel3D Oct 23 '19 at 6:42

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.