First time here? First time here? Newsletter Signup Newsletter
Search tutorials
Author: Morten Barslund (GotCha) | Website: http://www.hhbk.subnet.dk/GotCha.html

Friction and Elasticity

When we look at our method, we then have to position each movie clip dependent on the distance to the previous movie clip. In this context, we have to take a look at friction. Normally, this means a physical friction, but in this context simply that we want to slow down a movie clip until it reaches the position, which it's moving towards. If you picture a person on a bike, biking along a road and suddenly decides to stop biking, then at some point the person will stop. After this, we mark the place, where the person stopped biking and the place, where the person stopped. Furthermore, we notice that the person moved faster the longer the distance to the stopping point was.

In our case, we know both the current position (equivalent to the place, where the person stopped biking) and the place, where we want to go (equivalent to the place, where the person stopped). It seems that the speed can be described by calculating the distance between these two and divide this with a constant (the greater the distance, the greater speed). We store this in a variable, where our next position is our current position plus this variable. To illustrate this, we look at a movie clip, which moves towards a certain position (here, we are only interested in the horizontal plane since the same logic applies to the vertical plane). If we say that our current position is 0 and we want to move towards 100, we have the following values, where the constant is the earlier mentioned myFriction with a value of 2, the current position is x, the distance a, the speed v and the next position y:

As the values indicate, we start out by moving fast, which gradually decreases (v is smaller). This confirms that we take the distance (100-x), divide it by a constant, store this in a variable (in this case v) and calculate the next position (x+v). We also notice that the greater the constant, the slower we move (the speed v becomes smaller). If we divide by something greater, the result becomes smaller, when the numerator is the same. You might wonder about, when x is greater than the position, we want to move towards. This lies within the expression itself, since the speed v becomes negative (the distance is negative); we are still approaching the position.

» Level Advanced

Added: 2000-12-30
Rating: 8 Votes: 104
(10 being the highest)
» Author
» Download
Download the files used in this tutorial.
» Forums
More help? Search our boards for quick answers!


  • There are no comments yet. Be the first to comment!

  • You must have javascript enabled in order to post comments.

Leave a Comment
  • Your email address will not be published. All fields are required.
Featured Flash FLA
» Author: Inocreato
» Title: RaiseTheBlocks
» Description: Raise all the blocks to win the game
Featured Sound Loops
Image for equalize

Audio Player

» Author: TomCat Carty
» Title: The Wood
» Description: Just a little game ending or it can maybe be looped. Recorders with music box and percussion to give the feel of well, I don't know, the woods? Free to use, just credit me. thank you
Latest Font
» Author: Fábio FAFERS
» Description: I created this font for free use. Everyone can apply it in personal or business texts. Its free, but I want to be communicated in case of business use. Donations are accepted to keep the project of free fonts alive! Thank you all
Featured Sound Fx
Image for equalize

Audio Player

» Author: Davisigner
» Description: Hmm... what to say about this one? It's reminiscent of the closing notes of the opening music from the Three Stooges done in a church organ style with a closing cymbal crash. I'll give this one away gratis, but feel free to check out my free loops and potential upcoming license-mandated ones over in the respective part of Flashkit.