Chapitre 11
Animation
La grande nouveauté de VRML 2.0 par rapport à VRML
1.0 est la possibilité d'animer les objets d'une scène. La
méthode utilisée est connue sous le nom de Keyframing...
terme savant qui recouvre en fait un concept très simple pour l'utilisateur,
et que nous allons décrire ici.
Le Keyframing
Supposons que vous vouliez déplacer un objet d'un point A
vers un point B puis de B
vers A. Vous pourriez envoyer à intervalles
réguliers des coordonnées à un objet pour le placer
successivement aux différents points de la trajectoire. Ce serait
une charge de travail très lourde et difficile à mettre en
oeuvre.
Le keyframing repose sur une idée simple : on fournit le
point de départ A et le point d'arrivée
B puis de nouveau le point de départ
A, et c'est le programme de visualisation
qui calcule tout les points intermédiaires de la trajectoire !-)
Pour mettre en oeuvre le keyframing, il faut :
-
Une horloge, pour cadencer le calcul de l'animation
-
Spécifier la durée de l'animation
-
Spécifier les moments clés de l'animation, c'est à
dire les moments caractéristiques (dans notre exemple le moment
de départ du point A, le moment d'arrivée
au point B et le moment du retour au point
A)
-
Spécifier les valeurs clés de l'animation (dans notre
exemple le point de départ A, le point
d'arrivée B et de nouveau le point
A).
-
Un système d'interpolation, c'est à dire un système
qui calcule à chaque moment intermédiaire la valeur intermédiaire
entre 2 valeurs clés.
Interpolation
L'interpolation se fait de manière linéaire. En prenant
notre exemple, disons que la durée de l'animation soit de 10 secondes,
et que l'arrivée au point B se fasse
au bout de 5 secondes. Si le point A se trouve
à la coordonnée X= 0 et que le point B
à la coordonnée X = 10 nous aurons :
Temps écoulé T
|
Position en X de l'objet
|
T = 0
|
X = 0
|
T = 1
|
X = 2
|
T = 2
|
X = 4
|
T = 3
|
X = 6
|
T = 4
|
X = 8
|
T = 5
|
X = 10
|
T = 6
|
X = 8
|
T = 7
|
X = 6
|
T = 8
|
X = 4
|
T = 9
|
X = 2
|
T = 10
|
X = 0
|
En VRML nous disposons de ces 'outils' pour réaliser le keyframing.
Voir le cours Interpolateurs.