Lets go back to the very 1st animation assignment from Animation Mentor.
The Bouncing Ball.
Yes it seems really basic, and simple. But it is nothing close to that. In order to make it look real requires deep understanding. And everyone starts with this practice.
The Bouncing Ball is a start to learning what it requires to be able to animate realistically. It teaches me to study reference videos closely and understand the physics behind it before even planning the shot. It teaches me the concept of Timing and Spacing in animation. It teaches me squash and stretch motion which is applies to any other rig. It teaches me the importance of path of action. It lets me use the graph editor to see what the translation curve looks like and edit it correctly.
Concept
So this is what i understand from my research. May vary slightly from other people.
First the physics part -
According to Galileo, two bodies of different masses, dropped from the same height, will touch the floor at the same time in the absence of air resistance. And that is because the force acting on any object is the same, being gravity. From experiments done in a vacuum tube, where there is zero air resistance, a feather drops as fast as a coin. But in a normal environment, the feather gets so much air resistance it just stops accelerating so much sooner then the coin. Which means if 2 balls of the same shape and size but with different weight, drops from the same height, would contact the ground at the same time. Because both has the same air resistance.
So then why do they still seems so different after they are dropped? Because they bounce and roll different. And the thing that caused that difference is Inertial. The more the weight, the harder it is to move it or stop it, vice versa. Therefore the height reduction of a heavy ball, after it bounces off the ground, will be a lot more then a light ball. Most of the energy is used up to propel the ball in an opposite direction. Resulting in lower and lesser bounce. Likewise for distance travelled during the bounces or how far it will roll. And it is due to friction too. More force is needed to push the heavy ball against the friction on the ground, resulting in shorter distance.
An example of 2 balls with different weight :
An example of 1 bouncing ball :
This is a graph for Y-Axis translation :
This is the most tricky curve where timing and spacing is very important here. Timing is where the number of frames for each arc gets reduced after each contact. Spacing is how much the apex is curved so that the motion is slowed down near apex for hang-time, and on contact the curve is a V shaped so that the motion is fastest here. Each bounce height will reduce about the same amount, 40% in this case, throughout till it reaches those tiny bounces where the height reduction is minimal.
This is a graph for Z-Axis translation :
Because the ball hasn't come to a stop at frame 83, the curve is still somewhat steep. After changing direction then the curve gradual and comes to a stop.
This is a graph for X-Axis rotation :
Make sure when the ball starts rolling, it matches the ground contact.
This is the graphs together :
Depending on the ball materials. Assuming the ball is hard material and the ground is hard. There will be many tiny bounces at the end. Similarly a light ball will have many tiny bounces, whereas a heavy ball will have very few.
Take note to correctly curve in the right direction especially when it hits a wall and bounce back.
If the ball were to bounce off the wall in mid-air, the bounce height off the wall will still be lower then the previous bounce. There is just not enough energy to go any higher. The path of action will like something like this:
For squash and stretch, i did a test and found 3 possible variation. Slight different but its personal preference.
This is its graph:
Green curve is Y-Axis translation, Grey curve is Squash and Stretch.
The slight difference in 1st and 2nd jump is at the apex, where the one is neutral and the other has a little squash. 3rd jump differs with the extended stretch till almost the apex before it returns to neutral.
Just realised i can add in some ease in and ease out for the squash and stretch to improve this shot.