|
![](/i/fill.gif) |
"Josh" <s### [at] a com> wrote in message news:434e1532@news.povray.org...
> I've got a Key Frame animation utility I've written.
>
> Unfortunately it only works in straight lines, that is to say it
> calculates the variables for each frame by dividing the starting and
> ending values by the number of frames.
>
> This is fine but I want to be able to start the movement faster and end it
> slower, and vice versa, possibly even have it faster at the beginning and
> and with it slower in the middle.
>
> Example of what I am doing at the moment.
>
> Start Value for Camera X is -100
> End Value for Camera X is 1095
> There are 150 frames, so I increment the Camera X by +7.96 per frame, a
> straight line.
>
> What formular can I use to have the camera start faster and slow to a
> halt?
>
It depends what sort of deceleration you want, but one option is to simply
use a sin function something like:
Camera X = sin( (FrameCounter-1)*90/149)*1195-100 ## Untested ##
So that, as the FrameCounter goes from 1 to 150 we take the sine of a number
that goes from 0 to 90. This gives us a number that passes from 0 to 1 in a
sinusoidal fashion (approaching 1 increasingly slowly) which we can multiply
by the total distance to travel and finally adjust to start at -100.
Any good?
Chris B.
Post a reply to this message
|
![](/i/fill.gif) |