[LinuxFocus-icon]
LinuxFocus article number 347
http://linuxfocus.org

[Alex]
par Alexander Langer
<lf(at)kuxi.de>

L´auteur:
J'utilise Linux depuis 1993. Venant d'Amiga, j'aime le fait que l'on puisse récupérer tous les codes source et découvrir comment les autres font dans leurs programmes.

Traduit en Français par:
Florent Morel <fleuh-(at)-free.fr>

Simple Animation

[Illustration]

Résumé:

[open
mouth]

Créer une petite animation est simple et amusant, pour les enfants comme pour les adultes. Différents types d'animations sont possibles : un clip contenant un simple objet, une animation du style de celles des Monty Python, des films « time-lapse », des animations en pâte à modeler comme celles de Wallace&Grommit et bien plus encore.

Dans cet article, nous n'allons pas créer un film complet. En appliquant un exercice très simple, vous apprendrez les techniques fondamentales. Suffisament pour commencer votre propre film. ;-)

Note: L'image de droite et le petit point ci-dessous sont animés. Si vous souhaitez les visualiser dans votre navigateur web, vous devez lui permettre de lire les animations gif.

_________________ _________________ _________________

 

Résumé

Créer une animation est un processus composé de trois étapes : tout d'abord vous devez bien réfléchir à ce que vous souhaitez faire. Cela peut être aussi simple que de demander à vos bambins de ramener une petite voiture, quelques figurines pour commencer sur le champ et mettre en scène un accident de voiture. Ou alors vous pouvez écrire un story-board contenant des plans détaillés et du scénario, à la manière d'un professionnel. Cependant, une bonne idée et une histoire bien menée valent mieux qu'un matériel dernier cri et/ou cher.

Peu importe la façon de planifier, la prochaine étape sera d'acquérir les frames (trames) de votre animation. Si vous le souhaitez, vous pouvez ajouter du texte comme dans les bons vieux Laurel & Hardy.

Enfin, vous réunissez les trames et vous faites votre film.  

Matériel et logiciel requis

Les images peuvent provenir de multiples sources : Si vous souhaitez acquérir des images à partir d'une source externe (une des trois premières de la liste ci-dessus), il est supposé que vous avez le logiciel fonctionnant correctement pour ça. De plus, nous allons utiliser le programme mencoder du projet mplayer (www.mplayerhq.hu) qui permet de produire des films. C'est un logiciel puissant et qui est probablement déjà installé sur votre ordinateur. Et avec mplayer vous avez le programme pour visionner votre film.

Pour éditer les trames, vous pouvez utiliser The Gimp ou tout autre programme de dessin.
ImageMagick (www.imagemagick.org), le couteau Suisse des programmes pour convertir et afficher des images, est très utile pour créer et lire des animations.  

Votre Première Animation

Si vous possédez une webcam ou un appareil photo numérique, placez la/le sur une table et posez quelque chose devant. Ce « quelque chose » peut être une pomme, un verre ou tout simplement votre main. Mes enfants aiment jouer avec des bonhommes et une voiture Playmobil, créant l'animation de l'accident de voiture cité précédemment. Prenez une série de photos et bougez légèrement l'objet entre chaque prise. 10 à 20 clichés seront suffisant pour votre première animation.

Si vous n'avez pas d'appareil photo, pas de problème, nous allons créer une animation dite « jumping-dot » (point sauteur). Démarrer The Gimp et sélectionnez File->New (Fichier-Nouveau). Cliquez « OK » pour obtenir l'image par défaut (256x256, fond blanc). Sélectionnez l'outil brush (pinceau) dans la fenêtre principale et cliquez quelque part dans la partie en bas à gauche de l'image pour faire un point. Faites un click droit dans l'image, sélectionnez File->SaveAs (Fichier-Enregistrer Sous) et sauvegardez l'image sous « 0001.jpg » dans un dossier vide. Cliquez sur « ok » dans la fenêtre des options JPEG. C'est la première trame. Disons que nous voulons 10 trames, répétez donc l'opération suivante 9 fois :

  1. déplacez le curseur près du point créé. Si vous placez les points à intervalles constants sur chaque trame, l'animation paraîtra linéaire. Pour une balle rebondissante, il est plus réaliste de réduire l'espacement lorsque le point est dans la partie supérieure de la trajectoire.
  2. appuyez sur Ctrl-z pour enlever le point courant (Ctrl-z sert à annuler).
  3. cliquez pour créer un point à un nouvel emplacement
  4. faites un click droit dans l'image, sélectionnez File->SaveAs (Fichier-Enregistrer Sous) et sauvegardez l'image sous « 0002.jpg » etc.
    Astuce : Faites dérouler le menu « File » (Fichier) en sélectionnant la ligne à tiret dans le menu « File ». Ceci ouvrira le menu File de façon permanente sur le bureau. Maintenant vous n'avez qu'à cliquer sur « Save As ».

Vous devriez obtenir quelque chose comme ceci :
[frame1] [frame2] [frame3] [frame4] [frame5] [frame6] [frame7] [frame8] [frame9]

Créons maintenant l'animation :

$ mencoder 'mf://*.jpg' -mf type=jpg:fps=4 -ovc copy -oac copy -o output.avi
Le paramètre « fps » spécifie la valeur du nombre de « trames par secondes ». Une faible valeur est synonyme de moins de travail pour vous, mais aussi d'une animation plus saccadée.

Pour visionner votre chef d'oeuvre, tapez :

$ mplayer output.avi
Si vous désirez essayer avec différents nombres d'images par seconde, l'option « -fps » de mplayer permet de spécifier le taux désiré. Par exemple, pour avoir 10 trames par seconde, il faut utiliser « -fps 10 ». Il n'est pas nécessaire de ré-encoder l'animation avec un taux différent à moins que vous ne souhaitiez la donner à quelqu'un d'autre.

Il est parfois utile d'utiliser l'option « -loop », surtout avec les clips de courte durée. Pour lire l'animation 10 fois, ajoutez « -loop 10 ».

Comme alternative à mencoder/mplayer, vous pouvez prévisionner le film avec le programme animate d'ImageMagick :

$ animate *.jpg
Le film est lu de manière continue. Si vous cliquez gauche sur l'animation, un menu apparaît. Vous pouvez utiliser la barre Espace et la touche Backspace (retour arrière) pour vous déplacer par étapes dans l'animation (le nom de fichier de la trame affichée figure dans l'entête de la fenêtre, très utile si vous voulez retoucher une trame en particulier). Pour modifier la vitesse d'animation, utilisez les touches « < » et « > ».  

Le style Monty Python

Pour une animation du type de celles des Monty Python, prenez la photographie d'un visage. Si vous n'avez pas de photographie, prenez-en une sur Internet. Elle doit montrer le visage depuis le front jusqu'au menton, le tout devant être bien visible. Chargez-la dans The Gimp et cliquez sur l'outil Lasso. Sélectionnez le menton et la lèvre inférieure, vous obtiendrez une sélection plus ou moins rectangulaire dont la partie inférieure suivra la forme du menton. Copiez la sélection en utilisant Ctrl-c. Utilisez Ctrl-y pour supprimer la sélection. Maintenant le presse-papiers (clipboard) contient un menton que vous pouvez faire monter et descendre, mais pour créer une meilleure illusion, dessinez la bouche noire, foncez la lèvre inférieure et la partie juste en dessous.

A présent appuyez sur Ctrl-v et sélectionnez l'outil Déplacer (Move-tool) (l'icône correspondante représente des flèches dans les 4 directions). Déplacez le menton à sa place initiale. Sauvegardez la figure en tant que 0001.jpg, tout comme vous l'aviez fait avec le point sauteur, cliquez sur « Export » lorsque The Gimp se plaint de ne pouvoir supporter la transparence JPEG. Déplacez légèrement le menton vers le bas et enregistrez sous (SaveAs) 0002.jpg. Continuez jusqu'à ce que vous ayez toutes les trames. Encodez alors avec mencoder. Vous obtiendrez un effet encore meilleur si vous coordonnez le mouvement des lèvres avec de la musique ou des paroles provenant d'une piste audio.

Si vous souhaitez encoder une animation GIF (comme les images en haut de cet article), le programme de conversion convert d'ImageMagik peut le faire :

$ convert -delay 20 *.jpg out.gif
L'unité de l'option « -delay » est 1/100 de seconde, donc 20 correspond à 5 trames par seconde. Cependant, vous pouvez voir les trames d'une animation GIF individuellement avec « identify » :
$ identify out.gif"
out.gif[0] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[1] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[2] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[3] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[4] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[5] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[6] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[7] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[8] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[9] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
out.gif[10] GIF 152x104+0+0 PseudoClass 256c 8-bit 201.1k 0.0u 0:01
 

Les animations Time-Lapse

La technique dite du « Time-lapse » consiste à photographier à intervalles réguliers le même sujet, parfois sur une période très longue. En créant une animation avec les clichés réalisés, on observe l'évolution du sujet sur un temps beaucoup plus court : par exemple l'éclosion d'une fleur, le passage des nuages dans le ciel... Créer des animations de type Time-lapse est facile et de plus peut être très intéressant. Et vous n'avez pas à vous en faire pour le script ou l'histoire. Tout ce que vous avez à faire est configurer votre appareil pour prendre des photos à intervalles réguliers. Si votre appareil photo est compatible video4linux (v4l), vous devriez essayer vgrabbj (gecius.de/vgrabbj/). Cela permet de prendre des photos toutes les x secondes et de les sauvegarder dans un fichier.

Si le déclenchement de l'appareil est automatique, vous pouvez vous permettre un taux de rafraichissement aussi élevé que votre carte mémoire vous le permet.

Quoi filmer ?

Je ne l'ai pas essayé moi-même mais si votre bébé vient juste de naître, vous pouvez prendre une photo tous les x mois, depuis sa naissance et pendant toute sa vie. D'accord, cela vous prendra un peu de temps avant d'avoir une série de trames, mais le résultat en vaudra la peine. Prenez de vraies photos puis scannez-les car vous pouvez être sûr que de vraies photos vont durer plusieurs années, alors que vous pouvez rencontrer de nombreux problèmes avec le format numérique (formats de fichiers, média obsolète, etc).

Si vous décidez de prendre des photos de votre nouveau-né, je pense qu'une photo tous les 6 mois est suffisante pour avoir les clichés souhaités, sans que ce soit trop rapproché et ni que cela vous prenne trop de temps pour réaliser les photos. Si votre bébé est né en été, vous pouvez prendre un cliché pour son anniversaire et un pour noël. L'autre conclusion est qu'il faut prendre les photos à 2 mètres de distance du sujet, pour avoir la même échelle sur toutes vos futures trames. Sinon, il faudra que vous les mettiez à la même échelle vous-même.  

Autres idées

Découvrez comment ajouter du son à vos animations. Même si vous ne faites du bruit qu'en tapant votre pied par-terre, en criant, etc. Bref, toute sorte de bruits, cela rendra votre animation bien plus vivante.

Reproduisez l'animation Luxo Jr. (www.pixar.com/shorts/ljr/) de Pixar en utilisant une lampe de bureau et une balle.

Disons que vous souhaitez ajouter une bulle, pour faire parler une personne ou un figurine. Au lieu d'utiliser des sauts de « 1 » pour le nom de vos images, utilisez des sauts de « 10 » quand vous prenez les photos. Ouvrez l'image à laquelle vous souhaitez ajouter la bulle dans The Gimp. Dessinez la bulle et ajoutez le texte. Sauvegardez l'image et fermez The Gimp. Maintenant, dupliquez (copiez le fichier) la trame 9 fois, donnez leur un numéro entre la trame courante et la trame suivante. Si vous programmiez en BASIC durant les années 80, vous vous souvenez sans doute de cette technique :-) Une fois encodées, les trames contenant la bulle vont être affichées plus longtemps, permettant de lire le texte. Avec la même technique vous pouvez insérer de nouvelles trames, à la manière des films muets du début du 20ème siècle.

Vous souhaiterez bientôt être capable d'ajouter les précédentes trames à l'image que vous venez de prendre avec votre appareil. En les mettant les une par-dessus les autres, vous obtiendrez une structure en « peau d'oignon ». Ce faisant, vous pourrez aligner la position d'objets en déplacement, améliorer l'illusion de mouvement. Le paquet Animation de The Gimp a l'air prometteur à ce sujet.  

En savoir plus



Site Web maintenu par l´équipe d´édition LinuxFocus
© Alexander Langer
"some rights reserved" see linuxfocus.org/license/
http://www.LinuxFocus.org
Translation information:
en --> -- : Alexander Langer <lf(at)kuxi.de>
en --> fr: Florent Morel <fleuh-(at)-free.fr>

2005-01-22, generated by lfparser_pdf version 2.51