In this first entry I’ll explain how I created a very simple
animation consisting of a number of balls being released from a certain height.
Since each ball is different, each of them will have its own way to bounce.
This tutorial will cover a first look at the Graph Editor, an essential
animation tool.
![]() |
Bouncing balls |
Starting from frame one. 110 frames long.
First, we’ll create the floor with a cube, and then we’ll
create a sphere on top of it, moving its pivot into the bottom, right until it
touches the floor. We’ll select both objects and freeze their transformations.
Deselecting the floor, we’ll go to frame 0 in the Time Slider and press “S”. A red tick will appear in it, indicating the creation of a new key frame.
We'll give the Range Slider a size of 110 fps. We can always change the animation's length.
We'll give the Range Slider a size of 110 fps. We can always change the animation's length.
We can change the Time Slider’s appeareance by clicking the
Animation Preferences menu, represented by this button:
Then, we'll select Time Slider and change Key Tick Size for a new one.
There are some other interesting options in this menu. Since our animation won't be too complicated, I chose a 1x Height for the Time Slider and Continuous Looping, since it will be very short:
Now we should have a look at the video mode in Settings and choose a frequence of frames per second. Most European countries use PAL as the colour encoding system, so I chose that one. The other popular option is 24 fps.
Now that we've finished setting things up, we'll start with the animation process by creating a few Key Frames on the Time Slider and then we'll improve the animation by making some changes on the Graph Editor.
The first sphere that we created will simulate a basket ball, which are not too heavy and bounce quite a bit. By simply being released from a certain height they'll just keep bouncing less and less until they stop.
We'll get positioned in frame 0 and press "S" when we have our ball translated into a new position on the Y Axis, like 30. Then, we'll go to frame 10, make 0 the Y Translation and press "S". Every new bounce will last less than the previous one, so I thought that the ball's fall should last 10 frames, and from here on, the next bounces should last 9, 8, 7... until it stops. We'll only have to keep changing the Y Translation attribute every Key Frame, making it either 0 or a new height (that will just keep decreasing). This is how my Time Slider ended up looking like:
If we press play, we'll see that the ball moves up and down too smoothly and quite unrealistically, so we'll change that with the Graph Editor. To do so, we'll select our ball and click Window -> Animation Editors -> Graph Editor and this is what we'll see when we click Translate Y (the only one that generates a graph at this point):
There are some other interesting options in this menu. Since our animation won't be too complicated, I chose a 1x Height for the Time Slider and Continuous Looping, since it will be very short:
Now we should have a look at the video mode in Settings and choose a frequence of frames per second. Most European countries use PAL as the colour encoding system, so I chose that one. The other popular option is 24 fps.
Now that we've finished setting things up, we'll start with the animation process by creating a few Key Frames on the Time Slider and then we'll improve the animation by making some changes on the Graph Editor.
The first sphere that we created will simulate a basket ball, which are not too heavy and bounce quite a bit. By simply being released from a certain height they'll just keep bouncing less and less until they stop.
We'll get positioned in frame 0 and press "S" when we have our ball translated into a new position on the Y Axis, like 30. Then, we'll go to frame 10, make 0 the Y Translation and press "S". Every new bounce will last less than the previous one, so I thought that the ball's fall should last 10 frames, and from here on, the next bounces should last 9, 8, 7... until it stops. We'll only have to keep changing the Y Translation attribute every Key Frame, making it either 0 or a new height (that will just keep decreasing). This is how my Time Slider ended up looking like:
If we press play, we'll see that the ball moves up and down too smoothly and quite unrealistically, so we'll change that with the Graph Editor. To do so, we'll select our ball and click Window -> Animation Editors -> Graph Editor and this is what we'll see when we click Translate Y (the only one that generates a graph at this point):
We can select all the points and move them horizontally so that the first one starts at frame 0, if we haven't done that from the beginning. We can move any selected points clicking the mouse's middle button and Ctrl.
Now we'll start changing the curves a bit, starting with the bottom tangents, which are the ones that control how the ball reaches the floor. Selecting the first bottom point, we'll have to free and break its tangent by clicking:
And:
Then we have to select either the left part of the tangent, and pressing Shift + Mouse Middle Button, we'll shorten it until we get something like this:
If at any time, the tangents seem to still be locked,
We'll do the same for the right part of the tangent. Our bottom point should look like this:
Doing so for the rest of the bottom points we'll have something like this:
When the ball reaches its high points it kind stays floating for just a bit, and that's what we'll control with the top points by opening their curve a bit. We have to unify the tangents in this case and making them look something like this with the same key combination:
By doing so in each top tangent, our curve will eventually look like this:
Now we'll add a bowling ball to our scene, which will be bit smaller than the basket ball. In this case, we'll add translations on the X and Y axis to achieve a different effect. We'll start with the Y Translation and then we'll tweak the X one a bit.
Since bowling balls are very heavy, they don't bounce as much and they also fall down faster than our basketball, so they'd just do one big fall and many little bounces. Therefore this is my resulting graph for the Y Translation, which I made using the same techniques on the bottom and top tangents:
I thought I'd spice things up a bit by adding an X translation and a Z rotation so that the ball looks like it's actually rolling as an effect of the fall, so this is how my X translation graph came out:
As the ball is supposed to not just be translated, but roll as well, I added a little rotation on the Z axis:
This was the result:
After this, I added a tennis ball. These bounce a lot, very much like the basketball, so the process was very similar to the first one. This was how my Graph Editor ended up after animating the tennis ball:
The curve isn't lined up with the horizontal axis because of the pivot point that I used, but it's okay.
The last ball that I added was a beach ball, which are very light and quite bouncy. I simply added a Y translation, whose graph looks like this:
The animation looked like this:
Now that each ball has been animated, we can see the full result!
Since bowling balls are very heavy, they don't bounce as much and they also fall down faster than our basketball, so they'd just do one big fall and many little bounces. Therefore this is my resulting graph for the Y Translation, which I made using the same techniques on the bottom and top tangents:
I thought I'd spice things up a bit by adding an X translation and a Z rotation so that the ball looks like it's actually rolling as an effect of the fall, so this is how my X translation graph came out:
As the ball is supposed to not just be translated, but roll as well, I added a little rotation on the Z axis:
This was the result:
After this, I added a tennis ball. These bounce a lot, very much like the basketball, so the process was very similar to the first one. This was how my Graph Editor ended up after animating the tennis ball:
The curve isn't lined up with the horizontal axis because of the pivot point that I used, but it's okay.
The last ball that I added was a beach ball, which are very light and quite bouncy. I simply added a Y translation, whose graph looks like this:
The animation looked like this:
Now that each ball has been animated, we can see the full result!


















No hay comentarios:
Publicar un comentario