###### Descriptions and Examples for the POV-Ray Raytracerby Friedrich A. Lohmüller     3D Animations with POV-Ray         Some basics and examples on animations.
Italiano
Français
Deutsch
Home
- 3D Animations Gallery
- POV-Ray Tutorial

3D Animation Tutorial
Index of Content
0. Basic Knowledge
1. Basic Example
2. Example 2
3. Images to Animated Gif
4. From Images to Video
5. Basic Terms
6. Animation Commands
I. Cyclic Animations
1. Rotating Objects
1.2. Planets in Orbit
1.3. Clock Animation
2. Rotating Camera
2.1. Straight Moving Camera
3. Western Wheel
Problem
3.1. Rolling Wheels
4. Gears
4.1. Roller Chain
4.2. Bike Chain
5. Swinging Pendulum
5.2: Rock the Rocker
6. Spiral Pendulum
7. Coupling Rods
7.1. Connecting Rods
8. Psychedelic + Op-Art
9. Counters + Countdowns
10. Folding of a Cube
II. Non-linear Movements
1.0 Speed Up/Slow Down 1
1.1 Speed Up/Slow Down 2
> 2. Fall + Bounce
3. Acceleration by
physical Formulas
4. Speed Controll by
Spline Functions
III. Animation Paths
with Spline Curves
1. Spline Curves
2. Closed Splines
3. Animation Paths

# Fall and BounceRealistic non-linear movements with useful basic functions.

Realistic Falling and Bouncing
Two macros for simulating falling (slow start, abrupt end) and bouncing (abrupt reflecting):

 ```//--------------------------------- #macro Fall_10( X ) ( sin(pi*(1/2*X + 1/2)) ) #end //--------------------------------- #macro Bounce_101( X ) #if(X0<1/2) (sin(pi*( X + 1/2))) #else (sin(pi*(1-X + 1/2))) #end #end //----------------------------```

###### Bounce without acceleration
Bounce with realistic acceleration
 ```//--------------------------------- #macro Bounce_101( X ) #if(X<1/2) (sin(pi*( X + 1/2))) #else (sin(pi*(1-X + 1/2))) #end #end //---------------------------- #declare Time = clock +0.00 ; //--------------------------------- sphere{ <0,0,0>,0.15 texture{ pigment{ color rgb<0.3,0.7,0>} finish{ phong 1 } } translate <0.25, Bounce_101(Time)*(1-0.15)+0.15,0> } // end sphere```
Bounce without acceleration
 ```//--------------------------------- #declare Time = clock +0.00 ; //--------------------------------- sphere{ <0,0,0>,0.15 texture{ pigment{ color rgb<0.3,0.7,0>} finish{ phong 1 } } #if(Time<0.5) translate<0.25,(1-Time*2) *(1-0.15)+0.15,0> #else translate<0.25,(Time-0.5)*2*(1-0.15)+0.15,0> #end } // end sphere ```
top