ContribCliquez ici pour proposer des corrections ou des compléments pour cette page.
Exemple 3

Faire une animation complexe est... complexe et très fragile ! Pour réussir l'animation que nous allons étudier il faudra faire preuve de méthode et de précision.
Ce tutoriel va peut-être vous paraitre long et compliqué mais si vous suivez les indications pas à pas, tout devrait bien se passer.

Présentation de l'exercice


Dans cet exercice, nous allons voir comment animer un train d'atterrissage comportant plusieurs pièces liées entre elles mais aux animation différentes et réagissant à des actions différentes.
Tout d'abord, vous pouvez télécharger le fichier de l'exercice suivant : Blender_exercice_wiki.zip (1Mo)
Voilà comment se présente le fichier dans Blender:

Vous avez une fenêtre 3D affichant le train d'atterrissage modélisé.
Le train affiché est celui que vous pourrez utiliser pour l'exercice, il se situe sur le calque 1 (Flèche1 petit carré rouge).
Le calque 2 est vide et sera réservé à la mise en place de la structure destinée à l'animation.
Sur les calques 3 et 4 (Flèche1 petits carrés bleus et roses) vous trouverez une version finalisée du train d'atterrissage avec son armature animée.
Sous cette fenêtre 3D, il y a une fenêtre de boutons (Flèche2), où nous entrerons les particularités et fonctions des éléments
Enfin, à droite, nous avons une fenêtre "Action Editor" (Flèche3) qui nous servira à contrôler les clés de l'animation (losanges jaunes et blancs).
Et pour commencer, voici un aperçu de l'animation que nous allons tenter de réaliser:

Dans cette animation nous allons distinguer deux groupes:
-LE GROUPE PRINCIPAL (en vert) elle concerne le train principal
-LE GROUPE SECONDAIRE (en rouge) elle concerne la roue et l'amortisseur

Dans l'image ci-dessous, vous pouvez voir l'animation du groupe secondaire qui n'est pas très visible dans le mouvement de l'image 1. Cette animation comprend la rotation de la roue (sur son axe et sur l'axe du train pour la rentrée) et l'animation de l'amortisseur (avec ses deux étriers).

Nous allons donc voir comment animer ces deux groupes pour avoir un fonctionnement correct dans X-Plane.



GROUPE PRINCIPAL

Le groupe principal concerne les trois parties qui vont s'animer lors de l'entrée et de la sortie du train (la jambe principale et ses deux leviers de traction).


Mise en place du 1er Bone

La mise en place des bones est certainement la partie la plus importante pour le succès de l'animation finale. Il est important de ne pas se mélanger et d'être précis.

1- commencez par placer tous les éléments (objets) qui composent le train d'atterrissage à leur bonne place les uns par rapport aux autres.

Notez que l'amortisseur doit-être placé dans sa position "compressée".

2- Placez le curseur au sommet du train principal

Pour placer le curseur, sélectionnez l'objet arbre_principal, tapez shift + s pour faire apparaitre la fenêtre de dialogue de snap et choisissez cursor > sélection, en fait le curseur va se placer au point d'origine de l'objet sélectionné, dans le cas ou cet origine a été placé soigneusement, dans cette exemple notez ça position placé au centre de pivot de la jambe.

3- Préparez la mise en place des bones. Pour travailler plus facilement et éviter de vous embrouiller lorsque les bones et votre modèle 3D seront en place, prenez l'habitude de poser vos bones sur le calque 2(Layer) de Blender. On active les calques en cochant les case de la série de boutons qui se trouve en bas de la fenêtre 3D dans la barre de menu (voir image ci-dessous). Notez que dans l'image ci-dessous, les deux premières cases sont cochées. Effectivement, Blender permet d'afficher plusieurs calques en même temps, ainsi, vous pouvez afficher votre objet 3D qui se trouve sur le calque 1 et votre armature de bones qui se trouve sur le calque 2 en même temps tout en les gardant isolés (très utile pour sélectionner les éléments plus tard !!!).

Notez également que, dans X-Plane, seul les calques 1 et 2 sont pris en compte lors de l'export final au format Obj (ce qui ne vous empêche pas de placer des objets sur d'autres calques pour les isoler pendant votre travail).
Autre point important, activez l'option "Pivot: Active Object" (petit bouton avec le point dans l'image ci-dessus). Cette option va nous permettre de manipuler les bones avec moins de surprises.

4- Ajoutez un bone. Mettez vous en vue de face (Numpad 1), pressez la touche Espace et faites: Add > Armature
Par défaut, un bone vertical est créé à partir de votre curseur. Nous allons le tourner pour le placer le long de l'élément qu'il devra animer. Pour cela, nous désactivons le mode "Edit" du bone pour le repasser en mode "Objet" (touche Tab) et nous appuyons sur la touche "R" pour effectuer une rotation.

5- Nommez le bone. Maintenant, vous allez nommer ce bone avec la dataref dont il a besoin pour être actif lors de la rentrée et de la sortie du train.
Pour savoir comment entrer ce nom, allez voir la manip décrite dans l'exemple "'Animation simple".
Le nom de cette dataref est "acf_gear_deploy". Comme il s'agit du train numéro 2 (Dans le Rafale, le train 1 est celui du nez et le train 3 est le train principal droit) nous ajouterons à cette dataref les caractères [1].
Pourquoi [1] et pas [2] (vu que c'est le train N°2) ??? En fait, X-Plane commence toujours par 0, le train N°1 est donc le train numéro 0, et le train N°2 sera le train numéro 1 (notez que ça marche aussi pour le numéro des moteurs !). Le nom complet de notre bone sera donc acf_gear_deploy[1].

6- Placez le point pivot de l'objet. Maintenant que le bone est en place et que notre curseur est exactement à l'origine de ce bone, nous allons faire en sorte que le point de référence de notre objet se trouve exactement au même endroit. Pour celà nous allons sélectionner l'objet puis aller dans le menu "Objet"(1)/"transform"/"Center Cursor"(2) (voir image ci-dessous).


Mise en place des autres Bones

La mise en place des autres bones va se faire exactement de la même manière que le bone précédent, à savoir:

  • placement du curseur
  • ajout du bone
  • rotation et mise à l'echelle (touche "S") du bone
  • Nom du Bone
  • Point de pivot de l'objet

Associer les Bones entre-eux

Maintenant que chaque partie du train a son bone, nous allons associer les bones entre-eux afin de créer le squelette pour l'animation du groupe principal. Pour cela il faut:
- sélectionner tous les bones
- aller dans le menu "Objet (1)/ Join Objects (2)"

Et voilà, nos bones sont reliés entre eux et chacun à un nom différent (ils ont automatiquement été renommés "acf_gear_deploy[1]", "acf_gear_deploy[1].001", "acf_gear_deploy[1].002").



GROUPE SECONDAIRE

Le groupe secondaire comporte également trois parties et concerne d'une part, la rotation de la roue (sur elle même lors des phases de roulement et sur son axe lors de la rentrée et sortie du train) et d'autre part l'animation de l'amortisseur.


Mise en place des Bones

Pour ce groupe, contrairement au groupe principal, tous les bones auront la même origine. Pourquoi ? Dans le groupe principal, tous les bones réagissaient à la même action (la rentrée du train) mais à partir d'axes différents (chaque levier avait sont axe de rotation). Pour le groupe secondaire, nous avons trois bones réagissant à trois actions différentes mais qui sont malgré tout liés entre-eux ! Dans ce cas, il y a de gros risque qu'une des animation interfère sur l'autre quand elle est sollicitée... c'est pourquoi il faut que l'architecture de notre armature soit particulièrement propre, si il y a un décalage, les interférences risquent fortement de saboter l'animation.

Comme pour le groupe principal, nous allons commencer par placer notre curseur. (vous noterez qu'il est placé exactement au croisement des deux axes qui seront utilisés par ce groupe d'animation = flèches jaunes)

- Premier Bone: Maintenant que le curseur est en place, pressez la touche Espace et faites: Add > Armature
Le premier bone de ce groupe est créé, sortez du mode "Edit" (touche Tab) et redimensionnez le comme bon vous semble (touche S).
Ce bone va être utilisé pour l'animation de l'amortisseur. Pour qu'il réagisse à cette action nous allons lui donner le nom de la dataref "tire_vrt_def_veh". Comme il s'agit de l'amortisseur du train N°2 (même chose que pour les bonnes du groupe principal) nous ajoutons [1]
Le nom complet de notre bone sera donc: tire_vrt_def_veh[1]

- Deuxième Bone :Pressez de nouveau la touche Espace et faites: Add > Armature pour créer le deuxième bone. Pour ne pas se mélanger, nous allons appliquer une rotation à 180° de ce bone, pour faire cela avec une précision totale, sortez du mode "Edit" (touche Tab), appuyez sur la touche "R" et sur votre pavé numérique tapez "180" puis tapez "Entrée".
Ce deuxième bone servira à l'animation de rotation de la roue quand celle-ci doit rentrer dans le logement du train d'atterrissage. Il sera donc actif lorsque le train rentrera ou sortira, c'est pour celà que nous lui donnerons comme nom la même dataref que celle utilisée dans le groupe principal, à savoir: acf_gear_deploy[1].003

- Troisième Bone :Pressez de nouveau la touche Espace et faites: Add > Armature pour créer le troisième bone. Là aussi, pour ne pas se mélanger, nous allons appliquer une rotation mais à -90° cette fois, pour faire cela avec une précision totale, mettez vous en vue de face (Numpad 1), sortez du mode "Edit" (touche Tab), appuyez sur la touche "R" et sur votre pavé numérique tapez "-90" puis tapez "Entrée".
Ce dernier bone ne servira qu'à la rotation de la roue pendant le roulement, il aura donc pour nom la dataref "tire_prop_rot" et comme il sagit toujours du train numéro deux, nous ajouterons également "[1]". Son nom complet sera donc: tire_prop_rot[1].

- Quatrième bone : Pressez encore la touche Espace et faites Add > Armature pour créer le bone de l'étrier du bas. Passez le bone en mode "Object" (rose), passez en vue de profil (Numpad 3) et faites basculer le bone sur l'étrier (touche "R"). Ce bone va servir à animer l'étrier pendant la compression et la décompression de l'amortisseur, il aura donc comme nom "tire_vrt_def_veh[1].001".

- Cinquième bone : Ce bone sera relié au quatrième bone car les deux parties de l'étrier sont constamment reliées entre elle. Pour créer ce bone, nous allons sélectionner le quatrième bone (celui de l'étrier bas), passer en mode "Edit" (touche Tab) et appuyer sur la touche "E" (extruder). En glissant la souris, un bone sort de la tête du quatrième, il suffit de le faire glisser jusqu'à la base de l'étrier haut et de cliquer. Notre cinquième et dernier bone est créé, il aura pour nom "tire_vrt_def_veh[1].002".

Voilà, nos cinq bones sont en place et le tout ressemble à ça:

Pour associer les bones entre-eux il suffit de procéder comme pour le groupe principal.
Maintenant que les bones sont en place et que notre curseur est exactement à l'origine de ces bones, nous allons faire en sorte que le point de référence des objets se trouve exactement au même endroit. Pour cela nous allons sélectionner chaque objet un par un et aller à chaque fois dans le menu "Objet"/"transform"/"Center Cursor" (voir la manip utilisée pour le groupe principal).


FINALISATION DE L'ARMATURE


Association des armatures

Maintenant que nos deux groupes sont mis en place avec leur bones et que ces deux groupes vont devoir fonctionner ensemble, nous allons associer les deux armatures. Pour cela, vérifiez que les deux armatures sont en mode "Object" (couleur rose). Une fois la vérification faite, sélectionnez l'armature du groupe secondaire, maintenez la touche "maj" enfoncée et sélectionnez l'armature du groupe principal. Une fois les deux armatures sélectionnées, faite "ctrl + J" pour joindre les deux armatures (c'est la même manip que pour lier deux bones comme on l'a vu plus haut)
Nous allons maintenant définir quel bone commande les autres...


Hiérarchisation des bones

Dans notre animation, si chaque bone a une fonction, certains (pour ne pas dire tous) outre leur animation propre, seront également liés à l'animation d'un autre bone. Etudions le cas de la roue...

Exemple de la roue

La roue est liée au bone tire_prop_rot[1] qui se contente de la faire tourner. Pour remplir cette fonction correctement, ce bone n'aura pas d'information de position (uniquement de rotation). Malgré tout, une fois dans X-Plane, il va bien falloir que la roue suive le mouvement du train d'atterrissage, de l'amortisseur,etc... Pour que la roue puisse réagir à toutes ces sollicitations, nous allons lier le bone de la roue aux bones qui seront chargés de ces différentes animations. Si nous ne faisions pas ça, chaque éléments de l'objet s'animerait seul et notre roue resterait à sa place en tournant... il faut donc déterminer pour chacun de nos bones, qui commande quoi et dans quel ordre ?

La roue doit être capable d'effectuer 4 animations:

  • Tourner en roulant (tant que la roue de l'avion d'X-Plane tourne)
  • Monter et descendre avec la suspension (avec le mouvement de l'amortisseur)
  • Rentrer avec le train (lorsque la rentrée du train est sollicité)
  • Tourner pendant la rentrée du train (pour se placer dans son logement)

Pour pouvoir effectuer ces 4 animations, nous allons solliciter un chaine de bones:

  • Le bone tire_prop_rot[1] pour la rotation.
  • Le bone tire_vrt_def_veh[1] pour le mouvement de suspension.
  • le bone acf_gear_deploy[1] pour la rentrée du train.
  • Et le bone acf_gear_deploy[1].003 pour le rangement de la roue.

Pour comprendre comment se construit la chaine, il faut raisonner logiquement

Dans la réalité:

  • Ma roue est fixée à la Bague de fixation.
  • Cette Bague de fixation est fixée à l'Amortisseur.
  • L'amortisseur est relié au Bras principal du train d'atterrissage.

Notre chaine sera donc:

  • Bone de la roue, soumis au bone de la Bague de Fixation
  • Bone de la Bague de Fixation, soumis au bone de l'Amortisseur
  • Bone de l'Amortisseur, soumis au bone du Train Principal

En étant reliée à cette chaine par son bone, notre roue vas donc:

  • Tourner grâce au bone de la Roue
  • Se caler dans son rangement grâce au bone de la Bague de Fixation
  • Monter et descendre avec la suspension grâce au bone de l'Amortisseur
  • Et suivre le train d'atterrissage grâce au bone du Train Principal

Grâce au bone "tire_prop_rot[1]", nous pouvons donc associer la roue à une chaine d'actions afin qu'elle puisse réagir à ces 4 animations suivant la demande.
Place à la mise en place de cette chaine en utilisant les relations "Parent / Enfant"...

Liaisons Parent/Enfant

Dans la pratique, ce genre de liaisons déterminant quel bone dirige quel autre est appelée une liaison "Parent / Enfant". Pour effectuer une telle liaison au sein de notre armature il faut passer l'armature en mode "Edit".
Une fois en mode "Edit", sélectionnez un bone que vous voulez parenter. Dans la barre de menu, vous avez le champ indiquant le nom de votre bone (N°1 dans l'image ci-dessous) et à coté un menu déroulant qui vous affichera la liste des autres bones faisant partie de votre armature (N°2 sur l'image). Dans cette liste, vous allez sélectionner le bone dont dépendra celui qui est actuellement en mode "Edit" (N°3 sur l'image).

Dans cette image, nous pouvons voir que le bone sélectionné est celui de la roue ("tire_prop_rot[1]") et que dans la liste est sélectionné le bone "acf_gear_deploy[1].003" qu'il devra suivre (c'est celui de la Bague de Fixation).

 

Tableau des liaisons de bones

Comme la manip est la même pour chaque bone, nous nous contenterons de faire une liste des bones avec leur association respective. Dans cette liste, la première colonne indique le nom du bone qui est en mode "Edit" et la deuxième, le nom du bone auquel il faudra le lier :

"acf_gear_deploy[1]" ne sera lié à aucun bone car c'est le bone "parent" de toute l'armature.

"acf_gear_deploy[1].001" sera lié à _____ "acf_gear_deploy[1]".

"acf_gear_deploy[1].002" sera lié à _____ "acf_gear_deploy[1].001".

"acf_gear_deploy[1].003" sera lié à _____ "tire_vrt_def_veh[1]".

""tire_vrt_def_veh[1]"" sera lié à _____ "acf_gear_deploy[1]".

"tire_vrt_def_veh[1].001"" sera lié à _____ "acf_gear_deploy[1].003".

"tire_vrt_def_veh[1].002" sera lié à _____ "tire_vrt_def_veh[1].001".

"tire_prop_rot[1]" sera lié à _____ "acf_gear_deploy[1].003".

Il faut maintenant associer chaque bone avec une partie de l'objet...

Associer les Bones à leur objet


Maintenant que notre armature est en place et que les objets sont calés, nous allons pouvoir associer chaque bone à la partie de l'objet qui le concerne.
Pour cela, nous allons sélectionner l'armature de bones et la passer en mode "Pose".
Notre armature est devenue bleue, nous allons la désélectionner (touche A) et sélectionner la première partie de notre objet.
Une fois la partie voulue sélectionnée, nous allons garder la touche "maj" enfoncée et sélectionner le bone qui lui correspond (voir le récapitulatif des associations ci-dessous).
Maintenant que l'affichage correspond à l'image ci-dessous, nous allons faire le raccourcis "ctrl + P" et voir apparaitre ce menu:

Validez Make parent to "Bone" et le tour est joué. Il ne reste plus qu'à faire cette manip avec les autres parties de notre objet.
Récapitulatif des associations:
Pour le groupe principal, nous avons trois objets:

  • l'arbre principal du train
  • le levier bas
  • le levier haut

Voilà comment vont se faire les associations:

  • l'arbre principal sera associé avec le bone "acf_gear_deploy[1]"
  • le levier bas sera associé avec le bone "avf_gear_deploy[1].001"
  • le levier haut sera associé avec le bone "acf_gear_deploy[1].002"

Pour le groupe secondaire, nous avons cinq objets:

  • la roue
  • la bague de liaison (entre la roue et l'amortisseur)
  • le tube de l'amortisseur
  • les deux étriers de l'amortisseur

Voilà comment vont se faire les associations:

  • la roue sera associée avec le bone "tire_prop_rot[1]"
  • la bague de liaison sera associée au bone "acf_gear_deploy[1].003"
  • le tube de l'amortisseur sera associé au bone "tire_vrt_def_veh[1]"
  • l'étrier bas sera associé au bone "tire_vrt_def_veh[1].001"
  • l'étrier haut sera associé au bone "tire_vrt_def_veh[1].002"

RECAPITULATIF


Après toutes ces manipulations, il est tant de faire un petit récapitulatif de ce que nous venons de faire.

  1. Nous avons placé les objets
  2. Nous avons créé les bones
  3. Nous avons nommé les bones
  4. Nous avons relié les bones entre-eux
  5. Nous avons relié les deux armatures
  6. Nous avons définie la hiérarchie au sein de l'armature
  7. Nous avons associé chaque partie de l'objet à son bone

Place à l'animation !!!


CREATION DES ANIMATIONS


Comme pour la création de l'armature, nous allons effectuer les animations par groupe. Et contrairement à tout à l'heure nous allons commencer par le groupe secondaire.
Pourquoi le groupe secondaire ? Comme le groupe secondaire comporte tout un tas d'animations propres, pas forcément liées au groupe principal (notamment rotation de la roue, amortisseur) et qui ne feront que suivre l'animation du groupe principal (qui concerne la rentrée du train), il sera plus facile de régler ces animations sans que le train ne bouge en même temps (car nous allons passer régulièrement de l'état 1 de l'animation à l'état 2). Vous pouvez d'ailleurs constater sur la première image de ce tutoriel que, si on voit bien l'animation du groupe principal, l'animation du groupe secondaire est plus difficile à suivre (d'où la petite image suivante qui montre cette animation avec le groupe principal fixe).
Nous allons donc passer à l'animation du groupe secondaire...

Animation du Groupe Secondaire


La Roue

Nous allons commencer par l'animation de la roue lors des phases de roulement. Pour celà, nous allons sélectionner le bone tire_prop_rot[1]. Une fois sélectionné, nous nous mettons en vue de profil (Numpad 3) et nous allons figer la première position de notre animation en pressant la touche "I". Un petit menu comparable à celui de l'image ci-dessous apparait:

Sélectionner l'option "Rot". L'animation de la roue n'étant qu'une simple rotation, nous ne figeons que la position de rotation, celà évitera de rentrer en conflit avec les autres animations du groupe secondaire qui déterminerons, entre autre, l'emplacement de la roue. Si la roue avait une position de noté et l'amortisseur une autre, il y a de fortes chances que l'animation de la roue et de l'amortisseur partent n'importe comment...
Nous allons maintenant créer le deuxième état de l'animation de la roue. Pour cela, nous allons presser la touche "flèche droite" du clavier afin de passer sur l'image numéro 2 (image ci-dessous):

Maintenant que nous sommes sur l'image 2, nous allons faire tourner le bone sur son axe de 180°. Pourquoi 180° et pas 90 ou 360 ??? Si vous donnez une rotation de 360°, la roue dans X-Plane sera immobile (en fait, X-Plane considèrera que l'on est revenus à 0) et si l'on tourne de 90°, la roue ne fera qu'un quart de tour qui se répétera en permanence ce qui sera visible alors que la répétition d'une rotation de 180° est invisible.
Donc, pour effectuer la rotation, même chose qu'au début du tutoriel, on appuis sur la touche "R" (rotation) et l'on tape 180 sur le pavé numérique puis "Entrée". La position est bonne, nous allons presser la touche "I" et sélectionner l'option "Rot" pour figer ce deuxième état de la roue.
Notre deuxième position pour la roue est figée ? Donc l'animation de la roue est terminée, passons maintenant à l'amortisseur...

L'Amortisseur

Pour l'amortisseur, il faut rester sur l'image 2 et passer en vue de face (Numpad 1). Une fois que c'est fait, nous sélectionnons le bone "tire_vrt_def_veh[1]" et on presse la touche "I" pour figer la position compressée du train.
ATTENTION, l'animation de l'amortisseur n'est pas une animation de rotation comme la roue mais de translation. Dans le petit menu qui apparait nous allons donc sélectionner l'option "Loc" (pour Location) car il suffit juste que l'on détermine son emplacement en position compressée puis étendue.
Une fois la première position figée, nous passons sur l'image 1 et nous déplaçons le bone (touche G), l'objet "amortisseur" (et tout ce qui lui est rattaché) suit automatiquement le bone. Nous allons glisser le bone jusqu'à ce que l'objet "amortisseur" soit dans sa position étendue (n°2 sur l'image ci-dessous):

Ensuite, on appuie de nouveau sur "I" et dans le menu, on choisi de nouveau l'option "Loc". L'animation de l'amortisseur est terminée, passons aux deux étriers de l'amortisseur...

Les Etriers

Pour animer les étriers, nous allons revenir sur l'image 1, passer en vue de profil (Numpad 3) et sélectionner un des deux bones. Ensuite, nous allons appuyer sur "I" et valider l'option "Rot".
Même chose pour le bone de l'autre étrier.
Une fois les deux bones figés, nous passons sur l'image 2 et là avec l'option de rotation (R) nous allons faire en sorte d'ouvrir l'angle que forment les étriers pour qu'ils suivent la décompression de l'amortisseur (voir image ci-dessous).

Une fois les bones en place, on fige les positions de chaque étrier (touche "I") toujours en sélectionnant l'option "Rot".

La Bague de Fixation

Nous terminons par l'animation de la bague de fixation car, comme elle entraine la rotation de la roue et des étriers, son animation nous aurait gênée. Alors, nous revenons sur l'image 1, nous sélectionnons le bone de la bague de fixation ("acf_gear_deploy[1].003") et nous figeons sa position (touche "I") en sélectionnant l'option "Rot".
C'est fait, passons à l'image 2, mettons nous en vue verticale (Numpad 7) et faisons faire une rotation de 110° (touche "R" puis "110" sur le pavé numérique) à notre bone. Maintenant, on fige la position (touche "I") toujours avec l'option "Rot".

PARFAIT ! Le groupe secondaire est terminé !!! Place au Groupe Principal...

Animation du Groupe Principal


L'Arbre Principal

Nous allons commencer cette animation par l'arbre principal. Maintenant que notre groupe secondaire est animé, vous allez voir que nous n'avons plus à nous occuper de lui, il va suivre l'animation de notre train tout seul !
C'est parti pour l'arbre principal, nous nous mettons sur l'image 1, nous nous mettons en vue de profil (Numpad 3) et nous sélectionnons le bone "acf_gear_deploy[1]". Nous appuyons sur la touche I et nous sélectionnons l'option "Rot".
La première position est figée, nous passons à l'image 2 et là, nous appuyons sur la touche "R" et sur le pavé numérique nous entrons "80". Le train s'est replié de 80° (voir image ci-dessous, flèche orange)...
Nous n'oublions pas de figer cette deuxième clé (touche I option Rot) et nous passons à la deuxième rotation de l'Arbre Principal.
Nous venons de faire une rotation verticale mais l'Arbre Principal effectue aussi une légère rotation latérale en même temps. Pour faire celà, nous passons en vue verticale (Numpad7), nous appuyons sur la touche "R" et nous entrons "5" au pavé numérique.
L'arbre principal vient de se décaler de 5° vers la droite. Nous figeons cette autre particularité en appuyant sur I et en choisissant toujours Rot. L'animation de l'Arbre Principal est terminée.

Les Leviers

Pour les leviers, même manip que précédemment sauf que là, seul une rotation verticale sera nécessaire (pas de rotation latérale car c'est le bone de l'arbre principal qui s'en charge).
- Pour le levier bas, ça sera une rotation vers la droite (voir image ci-dessus, flèche verte).
- Pour le levier haut, ça sera une rotation vers la gauche (voir image ci-dessus, flèche jaune).

Vous avez fini ? Ok, l'exercice est presque terminé, il ne reste plus qu'à régler un dernier détail, l'attribution des limites...



ATTRIBUTION DES LIMITES



Pourquoi des Limites ? :

Oui, alors, je vous vois venir... vous vous êtes dit, on a fait toutes les animations, le train rentre, c'est du tout cuit ! Eh, bien non...
Sachez qu'il ne suffit pas toujours de donner deux positions à un objet pour que celui-ci se contente d'aller de l'une à l'autre dans X-Plane.
Pour la plupart des animations, l'attribution de limites n'est pas indispensable (pour notre animation plutôt complexe, seulement 2 suffisent) mais pour certaines, le risque de voir un amortisseur partir dans les airs, une roue dans le sol est couru d'avance si les limites ne sont pas déterminées à l'avance.

En fait, des limites doivent-être attribuées à toute animation qui est liée à une valeur "flottante" (qui change en permanence). Ça n'est pas le cas du train principal car celui-ci est : soit ouvert / soit fermé. Mais c'est le cas pour la roue ou l'amortisseur dont le mouvement (même si il a été prédéfini dans Blender) est adapté en permanence par le simulateur suivant la vitesse de la roue ou l'impact de l'avion avec le sol.
Vous l'aurez compris, les deux limites à rentrer dans notre exercice seront pour l'amortisseur et la roue...

Comment trouver les limites ?

Avant d'appliquer des limites, encore faut-il les connaitre ! C'est la phase la plus aléatoire car il n'existe aucune référence de toutes les limites (amortisseurs, aiguilles d'instruments, manettes...). Pour tenter de trouver la limite qui marchera dans X-Plane, il y a trois méthodes:

  • Chercher par soi-même en tâtonnant au pifomètre (souvent utilisée).
  • S'inspirer de travaux des autres développeurs (le plus simple).
  • Rechercher les valeurs grâce à un plug-in activable dans X-Plane (la plus technique) que je vous détaille ici:
     
  • 1 - Cette technique nécessite d'installer un plugin que vous pourrez trouver sur ce site. Selon la plateforme, téléchargez :
  • SDKPluginsLinuxBin.tar.bz2 (pour LINUX)
  • SDKPluginsMacBin.sitx (pour MAC)
  • SDKPluginsWindowsBin.zip (pour WINDOWS)
     
  • 2 -Installation du plugins

Allez dans le dossier MorePlugins/C/ du fichier juste décompressé et localisez le fichier "DataRefTester.xpl".
Mettez ce fichier dans le dossier plugins de X-Plane folder X-Plane/Resources/plugins

  • 3 -Téléchargez le ficher "DataRefs.txt" ici et mettez le dans le dossier X-Plane/Resources/plugins (à coté du plugin xpl)
  • 4 - Lancez X-Plane.

Dans le menu "plugins", sélectionnez : Plugins->Data Ref Tester->Filter list (desélectionez au besoin "Full Screen").
Dans le champs d'insertion de texte, tapez ce que vous cherchez (par exemple, "fuel" pour trouver les data référant au domaine fuel ou tapez la dataref exact si vous la connaissez).
Appuyez sur "Refilter" pour lancer la recherche.
Retournez dans le menu "plugins" et choisissez Plugins->Data Ref Tester->Toggle Display. Les Datarefs s'affichent en vert sur voile noir, l'avion est toujours pilotable (pensez à fermer la fenêtre que vous aviez ouvert pour la recherche de datarefs) et vous pouvez voir en temps réel quelle dataref est utilisée et de quelle façon (mettre en pause pour bloquer momentanément les paramètres et pouvoir déchiffrer certaines valeurs).
Et voila, par la suite il suffira de regarder les valeurs pour trouver les limites et les dataref qui peuvent être utilisées.

Rentrer les limites :

Maintenant que nous avons les valeurs de ces limites, il ne nous reste plus qu'à les rentrer.
Pour cela nous allons utiliser la fenêtre "Buttons Window" de Blender en mode "Logic" (F4) (voir Flèche 2 de l'image "Présentation_de_l'exercice"), appuyer sur le gros bouton "Add Property" et entrer le nom de la dataref à limiter en ajoutant à quoi correspond la limite que nous ajoutons (valeur 1 ou valeur 2 ?).

Dans la pratique de notre exercice, ça se résume à:
- tire_vrt_def_veh[1]_v2 pour l'amortisseur.
- tire_prop_rot[1]_v2 pour la roue.

Pourquoi v2 et non pas v1? En fait, par défaut, les limites automatiquement attribués (dans le cas où l'on ne donne aucune indication) sont 0 pour v1 et 1 pour v2. Dans la mesure ou la valeur 0 pour v1 ne nous dérange pas, nous pouvons nous contenter de lui indiquer une valeur pour v2 car elle sera différente de 1.

Maintenant que les deux limites sont nommées, nous allons rentrer leur valeur en remplaçant les 0.000.

  • Pour la limite tire_vrt_def_veh[1]_v2 (l'amortisseur) nous allons entrer "0.100"
  • Pour la limite tire-prop_rot[1]_v2 (la roue) nous allons entrer "180.000"

Alors, bon... vous n'allez peut-être pas me croire mais...C'EST FINI !!! Votre train d'atterrissage est prêt à fonctionner dans X-Plane !



A RETENIR



Pour terminer, quelques astuces et conseils qui pourront vous éviter bien des soucis...

  • 1- la position de l'image 1 doit correspondre à la position du train sorti avec l'amortisseur décompressé. On associera la roue à l'amortisseur uniquement à partir de cette image (la roue, avant toute association ou animation, doit donc se trouver au point de contact lorsque le train d'atterrissage est sorti et l'amortisseur étendu).
  • 2- la roue et son bone doivent être accrochés exactement au même point (point de contact "centre-de-la-roue/amortisseur" normalement). Bien veiller à ce que ce point reste commun à la roue et à son bone en mode "normal", en mode "pose" et en mode "edit" (c'est très important).
  • 3- Bien vérifier que les bones et les objets sont en place avant d'attaquer les animations !

Il se peut qu'en affectant un bone à un objet, l'objet se déplace (malheur !). Si c'est le cas, ramenez l'objet seul (ne touchez pas au bone !) à sa position normale, quitte à jouer en mode "Edit" pour que son point de référence corresponde à celui du bone ! (Particulièrement important pour la roue).

  • 4- toujours commencer la création des animations du train par l'animation de la roue (surtout pas d'autres mouvements ou de restes de mouvements en cours que ce soit amortisseur ou rentrée de train).

AUTRES CONSEILS

  • Si une animation part dans tous les sens...

Il y a plusieurs causes possibles:
- Si le défaut est visible lorsque vous visionnez l'objet dans "ObjectViewer" (touche A pour activer les animations), alors c'est une erreur d'animation de bones dans Blender.
- Si le défaut n'apparaît que dans X-Plane, alors c'est une erreur de limite qui est mauvaise.

  • Si vous voulez modifier l'animation

Vous jouez à un jeu dangereux ! En fait, pour ce type d'animations, la façon la plus propre d'effectuer des modifications reste la suppression des clés déjà entrées (losanges jaunes et blancs) voir même de la liaison parent/enfant du bone incriminé ! On peut aussi démonter l'armature bone par bone et reprendre à zéro...

  • Isoler une partie de l'animation

Vous aurez sûrement besoin d'isoler une partie de l'animation pour mieux en étudier certaines phases. Ca n'est pas très compliqué, dans la fenêtre "Action Editor", il suffit de faire glisser les clés des animations que vous voulez momentanément désactiver (losanges jaunes et blancs) en les passant soit avant, soit après la colonne de clés qui reste en place (le sens dépend des animations). Une fois vos tests terminés, il suffira de les remettre à leur place...