12
$\begingroup$

I want to animate a plane falling onto the ground.

It’s good to have the bounce interpolation however you are quite limited when you want to customize it, for example adding more smaller bounces to the end etc, just like you are able to in After Effects.

Is there an addon available to adjust that or is there even a solution within Blender which I just haven’t found?

enter image description here

enter image description here

$\endgroup$

4 Answers 4

11
$\begingroup$

There is no way to customize them.

The only way out is to not use the premade interpolations. Stay in Bezier interpolation, and use "free" handles to create your own bounces:

enter image description here

$\endgroup$
7
$\begingroup$

No, you can't adjust the bounce interpolation.

However, there are manual ways to progress from your state.

Select the two encasing keyframes and press ShiftO (2.7x) or ShiftAltO (2.8x) to sample frames between them, reset their interpolation type to Bezier afterwards. You can now manipulate them as you wish. Note, that this is also important as the down position will often not fall on full frames.

Sample Keyframes

You can also ghost the curve by pressing the ghost icon and use it as a reference.

ghosted curve

$\endgroup$
1
  • $\begingroup$ For Blender 2.8 it's Shift Alt O to sample keyframes or Key > Sample Keyframes in the dope sheet menu. $\endgroup$
    – devnate
    Jun 2, 2021 at 18:07
0
$\begingroup$

Question for you guys, how do you do a REVERSE bounce, so that it is essentially a mirror of the first bounce? This is what I get when I apply a bounce to my scale.

enter image description here

$\endgroup$
2
  • $\begingroup$ Ask yourself what you don't like about your reverse bounce. Think about what the curve would look like that fixes that. Make it so. It's really an artistic decision and goes to what effect you're trying to achieve. $\endgroup$ Aug 20, 2021 at 0:23
  • $\begingroup$ Use "Set Keyframe Easing Type" to "Ease In" $\endgroup$
    – Candle
    Aug 31, 2021 at 20:40
0
$\begingroup$

Sadly, there is no current way to change the paramaters of bounce interpolation, but there is a way to get the same effect via functions within drivers that can later be baked into keyframes. First off, you need to understand what mathematical function the 'bounce interpolation' derives from so that the driver can understand what kind of transformative vs time function you want. If you want ordinary bounce that decays exponentially with each bounce you must use the function

f(x) = (e^((2-x)/a)) * abs(c * cos(x * b))

(in this equation I used the constant 'e' arbitrarily, you can input any value as the base) To implement this function to the output of some tranformation (in my example I put translating the Z coordinate) within blender, you must do as follows.

Step 1: first, add a pound symbol to the value you'd like to animate and press enter, this will create the driver

Step 2: right click on the box that you created the driver in and select edit driver, this will open the driver menu. Then type the expression, pow(e, 2-frame/6) * abs(60 * cos(frame*60)) , in the driver editor expression box. The variable frame is the input variable and is taken from the value of the frame your animation is currently on so the function can be with respect to time.

Step 3: The values 6, 60, and 60 were the parameters I chose for my bounce animation and can be changed to your liking. If you press the space bar to play the animation it will work just like the built in one, but customized, never ending, and procedural!

Step 4: If you need this to be converted into keyframes, just right click on your object, press f3, search and select bake action, and once thats pressed make sure to select clean curves in the pop up. After that is done make sure to delete your driver.

This method works for any function you input into the driver so make sure to get creative and have fun with it!

$\endgroup$

You must log in to answer this question.

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