# Difference between revisions of "Doc:Ball Bounce"

 Language: English • español • français • русский

This tutorial is under contrstuction. Please be patience.

This is a tutorial to explain how to create a bounce tutorial. The main target of the tutorial covers the ball movement. It is known that cartoon like balls have also a very deformed poses meanwhile thery are travelling and speciphically when it hits the ground. This could be covered in a second stage.

## Different aproximations for the same result

With Synfig there are four ways to create a bounce ball using the technical posibilities of this program.

1. The first one is do the bounce ball manually. That would involve create several waypoints and adjust them to match a parabolic movement (in time and in path).

2. Second way is use the interpolations paramters of the waypoints when they are set to TCB interpolation. This would drastically reduce the amount of waypoints and also make easier the timing of the bounces.

3. Third way to perform a bounce ball is make use of the Link to bline abiliity. If you draw the path of a bouncing ball using a bline it is quite easy to make the ball follow the path even changing the bouncing speed.

4. The fourth way to simulate a bouncing ball is create the mathematical equations to do that. Just make several parabolic shots at the rigth place a the right time to simulate a bouncing ball. It would be a little tricky but probably should be the most accurate one.

## Manual Ball Bounce

The rule to make the ball bounce manually is to draw in a paper the desired bounce. Then mark the horizontal line with regular intervals and match the curve intersection in vertical. See the image:

You can notice that having regular intervals in the horizontal axis gives irregular intervals to the vertical axis. It is due to the nature of the curve.

Once the points are located in a 2D grid then it can be drawn directly in Synfig doing use of the grid (F11). After draw them I normalized the values to be completely symmetrical. That gives the following table:

 Time X position Y position Comments 0f -175.0 92.0 Highest point 4f -165.0 92.0 8f -155.0 81.118 12f -145.0 63.678 16f -135.0 29.479 20f -125.0 -15.522 Lower point 24f -115.0 29.479 28f -105.0 63.782 ... ...

You can see that the X position is increasing in steps of 10.0 and the Y position reproduces a parabolic curve.

To proceed with more than one bounce just duplicate the waypoints (place the cursor at the right place right click over the waypoint and duplicate) reproducing symmetrical movements. You should need to edit the X values manually to decrease by 10.0 for each new waypoint.

This is the resulting graph for the manual approximation to the ball bounce.

The resulting animation and file is this one.

File: Media:manual.sifz

## Ball Bounce using waypoints interpolations

The TCB interpolation mode allows modify the Tension, Continuity, Bias, and Temporal Tension values of the waypoint. So you can create easily smooth or peak aproximation to the value of the valuenode in the waypoint position.

This time I would use the same values for the highest and lower points of the table before. But I won't use more than one waypoint for each extreme position. The rest of the curve would be done using the TCB parameters.

The table of waypoints gives this result:

 Time X position Y position Comments 0f -175.0 92.0 Highest point 20f -125.0 -15.522 Lower point 40f -75.0 92.0 Highest point 60f -25.0 -15.522 Lower point ... ...

As you can see the number of points is reduced drastically.

In you only use a default TCB interpolation it would give you a poor result. Look at the graph:

But if you edit the TCB parameters this is the result you obtain:

The TCB parameters are the following:

 Time X position Y position Comments Tension Continuity Bias Temporal Tension 0f -175.0 92.0 Highest point 0.0 0.0 0.0 0.0 20f -125.0 -15.522 Lower point 0.0 -2.2 0.0 0.0 40f -75.0 92.0 Highest point 0.0 0.0 0.0 0.0 60f -25.0 -15.522 Lower point 0.0 -2.2 0.0 0.0 80f 25.0 92.0 Highest point 0.0 0.0 0.0 0.0 ... ... ... ... ... ... ... ...

That's the resulting animation:

And the sample file: Media:waypoint-2.sifz

Notice that the curve at 0f and at 80f are not properly formed. It is due to the fact that the TCB parameters needs to belong to an intermediate waypoint to have effect. If the waypoint is extreme (the end or the beginning of the animation for the parameter it cannot modify the curve. To solve that you should split the X and Y coordinates of the Origin and apply a Ease In/Out interpolation to those Y coordinate and leave the X coordinate with the current interpolation. So please consider only the bounces between the two black vertical lines.

Notice also that you can make the highest point more flat increasing the Temporal Tension parameter )a good value can be 0.5). This would produce a deformation to the X coordinate so you need to separate both coordinates to do that. Try it by your self editing the attached file. I have left the highest point to have the default values.

Here is a comparison of both bounces a the same time.

Notice that the

 Language: English • español • français • русский
{"found_math": false, "script_math_tex": 0, "script_math_asciimath": 0, "math_annotations": 0, "math_alttext": 0, "mathml": 0, "mathjax_tag": 0, "mathjax_inline_tex": 0, "mathjax_display_tex": 0, "mathjax_asciimath": 0, "img_math": 0, "codecogs_latex": 0, "wp_latex": 0, "mimetex.cgi": 0, "/images/math/codecogs": 0, "mathtex.cgi": 0, "katex": 0, "math-container": 0, "wp-katex-eq": 0, "align": 0, "equation": 0, "x-ck12": 0, "texerror": 0}