Warning: Undefined array key "HTTP_ACCEPT_ENCODING" in /home/clients/97cf10fa399c6faa42e2c9c80e9afbe5/web/tutoriel_terranim2/index.php on line 2

Deprecated: substr_count(): Passing null to parameter #1 ($haystack) of type string is deprecated in /home/clients/97cf10fa399c6faa42e2c9c80e9afbe5/web/tutoriel_terranim2/index.php on line 2
Tutoriel sur les animations avec Terragen : Options avancées de Terranim et étude de mouvements de caméra, par Hoffmann Nicolas

Tutoriel sur les animations avec Terragen
Options avancées de Terranim et étude de mouvements de caméra
Par Hoffmann Nicolas
Egalement disponible en anglais English version
Première partie disponible ici

Introduction

Le premier tutoriel sur Terranim présentait les aspects et les possibilités de cette nouvelle version estampillée 2.xx, toutefois ce tutoriel était destiné aux débutants, et ne rentrait pas dans le détail technique, ni dans le côté pratique, bref j'étais resté volontairement très généraliste afin de ne pas trop rebuter.

Ce second tutoriel a pour but de compléter le premier en expliquant : Je le redis quand même : ce genre de mouvement est loin d'être une science parfaitement exacte, et ce tutoriel n'a pas la prétention d'être le Saint-Graal qui résoudra tous les problèmes d'animation. Si vous avez d'autres méthodes à faire partager, je suis tout à fait preneur !

Plan du tutoriel

Revenir en haut de page

Pré-requis

Plusieurs éléments seront nécessaires pour la réalisation d'une animation :
Revenir en haut de page

1) Mouvements de caméra complexes : rappel et explications

Accordons tout de suite nos violons quand je parle de trajectoire de base ("Camera path"), je parle de la trajectoire de la caméra elle-même, et quand je parle de trajectoire de visée ("look at path"), je parle de la trajectoire où la caméra "regarde".

Quand je parle de mouvement de caméra complexe, j'entends simplement par là qu'on utilise une trajectoire de visée ("look at path"), ce qui permet de libérer la caméra sous Terranim : fini la simple marche avant ou la marche arrière, toutes sortes de mouvements deviennent possibles (déplacement latéral, demi-tour, survol, etc.).

Utiliser une trajectoire de visée (Target Path)
Comment utiliser cette possibilité ?

En sélectionnant "Use a look at path" comme mode de caméra (dans le Control Panel). A l'instar du 2ème tutoriel consacré à Campath, je vous conseille de toujours bien regarder sur quelle trajectoire vous travaillez, afin de ne pas faire de bêtise !

La très grande force de Terranim est de pouvoir directement prévisualiser les modifications que vous faites à partir des graphes sur la vue 3D. Supposons que vous décidiez de modifier le banking du point 2 et que la prévisualisation est stoppée juste à ce point, vous verrez directement votre caméra s'incliner ! C'est particulièrement agréable pour concevoir des mouvements de caméra, on peut tout de suite voir si le mouvement est réussi ou s'il faut ajuster.
Revenir en haut de page

2) Etude de mouvements simples rendus possibles

a) Rotation autour d'un point

Une rotation autour d'un unique point
Voici l'exemple le plus simple qu'une trajectoire de visée peut apporter : en utilisant un simple point comme visée, la caméra "regarde" toujours vers le même point fixe, ce qui peut permettre comme dans notre exemple de faire une rotation autour d'un point.

Si vous voulez faire uniquement ce mouvement, vous pouvez ne garder qu'un point en guise de trajectoire de visée. Si vous souhaitez inclure ce mouvement dans une trajectoire plus complexe, je vous conseille d'utiliser le même nombre de points pour les deux trajectoires. L'explication est donnée dans le d) dessous.

Voici un exemple ci-contre.

Vous pourrez noter qu'à chaque image c'est bien la trajectoire de base qui est sélectionnée. Si vous n'arrivez pas à voir la trajectoire de visée, les exemples sont inclus dans l'archive zip donnée en fin de tutoriel.

b) Demi-tour

Un demi-tour simple
Si vous avez lu le 2ème tutoriel consacré à Campath et que vous l'avez pleinement compris, utiliser une trajectoire de visée sous Terranim ne sera pas difficile, le principe reste le même.

A supposer que vous ayiez le même nombre de points pour la trajectoire de visée et celle de base, le temps de déplacement entre deux points donnés est le même pour la trajectoire de visée et celle de base (par exemple, s'il faut 2 secondes pour arriver au 2ème point de la trajectoire de base, il faudra 2 secondes pour que la trajectoire de visée en soit au 2ème point).

Au 1er point de la trajectoire de base, on sait que la caméra regarde le 1er point de celle de visée, et ainsi de suite...

c) Survol en orbite

Particulièrement simple à concevoir, ce type de mouvement donne des résultats particulièrement réussis dans certains cas : "Mars Global Superior" a ouvert le bal, confirmé ensuite par certains passages de l'animation "Mars Render" !

Disposez donc votre trajectoire de base, celle de visée sera exactement la même, à ceci près que les points seront situés plus bas. La caméra est tout simplement tournée vers le sol ainsi, il vous suffira d'ajuster le zoom et/ou la hauteur de la trajectoire de base pour obtenir la vue souhaitée.
Pensez juste à donner des valeurs suffisamment élevées à la trajectoire de base.

Il n'y a pas d'intérêt à vous montrer une capture d'écran de ce mouvement (les deux trajectoires sont confondues). Ne vous inquiétez pas, vous pourrez télécharger dans l'archive disponible en bas de page le fichier *.tap correspondant.
Et qu'est-ce qu'on dit ? ;-)

d) Le "Hitchcock effect"

Dans l'absolu, on n'a pas besoin d'utiliser une trajectoire de visée pour ce mouvement, mais comme cet effet est sympathique, ne nous privons pas d'en parler !

Cet effet est très utilisé dans les films, on s'approche d'un personnage et on a l'impression que le décor recule derrière lui en même temps. Il s'agit d'un simple mouvement en avant, combiné à un zoom (la valeur du zoom diminue plus ou moins progressivement).
C'est donc extrêmement simple à obtenir avec Terranim, il suffit d'ajuster la valeur du zoom en fonction de l'intensité que l'on veut donner à l'effet.

e) Trajectoires plus complexes, conseils

Si vous souhaitez créer des trajectoires plus complexes (plusieurs demi-tours, divers mouvements, etc.), posez-vous déjà la question suivante avant de foncer :
est-il possible de séparer cette animation en plusieurs parties ?

Comme expliqué dans le 3ème tutoriel, si des parties de votre animation peuvent être totalement indépendantes, ne vous en privez pas ! Le tout sera plus simple à gérer, croyez-moi sur parole !

Toutefois, on ne peut pas toujours diviser car les raccords peuvent être difficiles, et il y a tout simplement dans certains cas pas lieu de diviser une animation. Pourtant, il faut bien trouver un moyen simple pour générer des mouvements complexes sans avoir à s'arracher les cheveux.

Voici le plus simple que j'ai trouvé : quand on pose les deux trajectoires, je conseille de les poser avec le même nombre de points, et avec une trajectoire de visée légèrement décalée, le tout génèrant une quasi marche-avant normale comme indiqué ci-dessous.
Vous ne comprenez pas l'intérêt d'utiliser une trajectoire de visée pour cela ? C'est sûr que si vous désirez uniquement faire une marche avant, utiliser une trajectoire de visée est inutile. Dans le cas contraire, on peut maintenant en faire ce que l'on veut : ajouter un demi-tour ici, faire une rotation là, créer un survol, etc.
Comme le mouvement est fonction de la position du i-ème point de chaque trajectoire en même temps, le plus simple est d'avoir le même nombre de points, cela permet de pouvoir dire : au 2ème point de la trajectoire de base, je sais que la caméra regarde le deuxième point de la trajectoire de visée, etc.
Il suffit alors de bouger le point en question de la trajectoire de visée pour obtenir le mouvement souhaité (marche arrière, demi-tour, etc.).

Il est tout à fait possible d'utiliser deux trajectoires n'ayant pas le même nombre de points, mais si vous ajoutez/enlevez un point sur une des deux trajectoires, cela peut détruire complètement le mouvement créé, donc c'est une source potentielle de prises de tête.
Il est par exemple plus simple "d'entasser" plusieurs points d'une trajectoire de visée au même endroit pour créer une rotation autour d'un point au cours d'une animation.

Petit exemple simple :
Trajectoire simple Ajustement de la trajectoire de visée
A gauche, c'est une trajectoire de base posée avec une trajectoire de visée calquée dessus (une bête marche avant).
Ensuite je bouge les points de la trajectoire de visée afin d'ajouter un demi-tour au début, enchaîné avec une rotation et fini avec une prise d'altitude et une vue orbitale. Si on garde le même nombre de points dans les deux trajectoires, obtenir le mouvement souhaité devient très facile en utilisant cette façon de faire !
Revenir en haut de page

3) Options avancées

Options avancées (Custom Commands)
Terranim vous propose de créer divers paramètres via le panneau "Custom Commands", à supposer que vous l'utilisiez avec un logiciel qui ait la possibilité d'animer d'autres paramètres.

Dans l'exemple ci-contre, j'ai créé un paramètre "Inclinaison" qui influe sur les scripts et qui peut donc être piloté par Terranim.

Attention : cet exemple peut induire en erreur, ce n'est pas parce que l'on crée un paramètre Inclinaison que Terranim va comprendre que vous parlez de Banking et vous permettre de le prévisualiser !

Quelle utilité alors ? On peut tout simplement y voir la volonté d'être facilement extensible. Supposons que Terragen propose un nouveau paramètre animable appelé CloudDensity et pilotable dans un script via le paramètre "CloudDens". Vous pourriez facilement piloter ce paramètre avec ces options avancées en créant le paramètre dans les "Custom Commands".

Bien pensé, non ?
Revenir en haut de page

4) Terranim 2.0.14 : nouveauté

Utiliser la timeline de Terranim 2.0.14
Terranim 2.0.14 est encore en bêta à l'heure où j'écris ce tutoriel, mais il est tout à fait utilisable (et si vous faites des sauvegardes à chaque changement, vous ne risquez pas grand chose, n'est-ce pas ?).

La principale nouveauté de cette version 2.0.14 est une timeline (littéralement une ligne de temps), accessible via la petite horloge dans le panneau principal (cf image de gauche). Cette option permet de façonner aisément la vitesse d'une animation... c'est particulièrement utile pour synchroniser un mouvement avec une musique.
J'ai notamment utilisé cette option pour synchroniser le mouvement de caméra avec la musique pour le final de "Mars Render" (la chute sur le Mt Olympe).

Le principe est relativement simple : vous créez votre animation sans vous soucier du temps qu'elle va mettre pour atteindre tel ou tel point, ensuite vous lancez cette timeline. Normalement, tout doit être grisé, il faut d'abord calculer la timeline pour le script actuel (petite icône en haut à gauche de la timeline). Terranim va calculer tout cela, ensuite c'est à vous d'ajuster l'échelle de votre timeline (le select avec 50 sur l'image), et après vous pourrez ajuster les points de contrôle (les points de votre trajectoire de base) afin qu'ils soient synchronisés tels que vous le souhaitez. Ensuite il suffit de cliquer sur Apply Timeline pour obtenir le tout (Terranim va calculer les bonnes vitesses tout seul comme un grand). Pratique, non ?
Revenir en haut de page

Conclusion

Il me semble que la boucle est bouclée pour les actuelles versions de Terranim. Sauf oubli involontaire, les deux tutoriels consacrés à Terranim couplés au 3ème tutoriel couvrent la quasi-totalité des possibilités de ce très bon logiciel et les principaux problèmes/astuces à savoir.

Personnellement, je n'utilise quasiment plus que ce logiciel pour mes animations, son interface est suffisamment puissante et pratique pour obtenir des résultats satisfaisants !

Je tiens à remercier Olivier Cousinou ainsi qu'Arnaud et Florent Creux (la Team Superior) pour avoir relu et corrigé ce tutoriel !

Pour pouvoir lire ce tutoriel hors ligne et profiter des exemples, voici une archive zip : fichier (environ 230 Ko)

N'hésitez pas à me mailer pour me dire ce que vous pensez de ce tutoriel, ou pour me montrer vos animations !

Hoffmann Nicolas

Document compatible XHTML 1.1 et CSS

Valid XHTML 1.1!  Valid CSS!

Revenir en haut de page