Cette page provient de Documentation française de Blender 3D
http://blender.doc.fr.free.fr/lecture_ouverte
13.10. Armaturage (Rigging) d'une mecanique
à partir de Blender v2.31
Les armatures sont aussi importantes pour les personnages
mécaniques, comme les robots, les méca-guerriers, etc... (
Figure
13-55).
Figure 13-55. Méca-araignée à 4 pattes.
La première étape est de créer le maillage (
mesh)
des pattes. N'oubliez pas que nous concevons quelque chose de
mécanique, pas organique. Alors pas de forme entièrement
constituée d'un maillage unique. Les bras/jambes/cequevousvoulez
sont faits de plusieurs parties rigides, c'est donc chacune de ces
parties qui sera un maillage unique, et ces parties seront
déplacées/orientées les unes par rapport aux
autres.
Bien que la
Figure 13-55 ait 4 pattes de type araignée,
chacune constituée de 5 parties, il sera plus facile d'expliquer
les astuces avec un bras à une seule articulation.
Ma suggestion est celle-ci: fabriquez le bras avec 2 parties
identiques, et l'avant-bras, sur la droite, avec une seule. Remarquez
les cylindres qui représentent l'épaule (à gauche)
le coude (au centre) et le poignet (à droite) (
Figure 13-56).
Figure 13-56. Le modèle
Les autres cylindres au milieu du bras et de l'avant-bras sont les
futures attaches du piston.
Notez que tout sera plus facile si les axes de rotation
(épaule, coude, etc...) sont placés sur des points
d'intersection de la grille. Les manipulations futures seront
simplifiées si vous maîtrisez correctement le menu
Snap
de Blender.
13.10.1. Points-pivots
Maintenant ajoutez les axes mécaniques sur les points-pivots.
Théoriquement, vous devriez en ajouter un sur chaque
articulation, et 2 pour chaque piston. Dans un esprit de
simplicité, il n'y a ici que les 2 axes du piston,
constitués de cylindres fermés (pas des tubes) (
Figure
13-57).
Figure 13-57. Le modèle avec ses points-pivots.
Notez 2 choses :
- Il est fondamental que le centre du maillage de chaque
objet (axe) soit exactement centré/aligné sur l'axe de
rotation du piston.
- Chaque axe doit être "parenté" avec la partie du
bras corespondante.
13.10.2. L'armature
Maintenant il est temps de créer l'armature. Deux os seront
suffisants (
Figure 13-58).
Figure 13-58. Le modèle et son armature
Pour avoir un mouvement précis, les articulations doivent
être placées exactement sur les axes (c'est pourquoi je
vous disais plus haut de placer ces axes sur des intersections de la
grille, ainsi vous pourrez utiliser la fonction
Move Selected To
Grid du menu
snap).
Nommez astucieusement les os (Bras et avant-bras par exemple,
arm
et
forearm en rosbif ou yankee, selon le coté de
l'atlantique ou on est :) ). "Parentez" le maillage du bras avec l'os
correspondant de l'armature, en sélectionnant l'option
Bone
et l'os du bras (
Arm bone). Faites la même chose entre le
maillage de l'avant-bras et l'os de l'avant-bras.
Astuce Parent to Bone
Parent to bone fait efficacement suivre l'os
par l'objet sans aucune déformation. C'est ce qui doit se passer
avec un robot fait de morceaux d'acier indéformables!
Figure 13-59. Le modéle en mode Pose
Si vous passez en mode Pose, vous pouvez déplacer le bras en
faisant pivoter les os (
Figure 13-59). Si vous le voulez, vous
pouvez ajouter un
IK solver comme nous l'avons déja fait
dans la section précédente.
13.10.3. La partie Hydraulique
Figure 13-60. Le piston hydraulique.
Faites un piston constitué de 2 cylindres, l'un plus
étroit que l'autre, avec de jolis embouts pour les raccorder aux
points-pivots (
Figure 13-60).
Il est
indispensable que chacunes des 2 parties (les embouts)
aient le centre de leur maillage exactement sur leurs axes de rotations
respectifs.
Placez-les dans la bonne position et "parentez" chaque partie du piston
au maillage de l'objet correspondant à son axe (
Figure 13-61).
Figure 13-61. Piston hydraulique sur le bras.
Si maintenant vous faites pivoter chacune des pièces dans la
position qu'elle devrait avoir pour former une image fixe correcte,
vous aurez un joli piston. (
Figure 13-62, gauche).
Figure 13-62. Piston hydraulique en mode Pose.
Attention, si vous passez en mode Pose et que vous déplacez le
bras ou l'avant-bras, le piston va tourner vers le haut... (
Figure
13-62, droite).
Pour que le piston fonctionne normalement, vous devez faire en sorte
que chaque moitié de piston "tracke" l'
axe de pivotement
de l'
autre moitié du piston (pas l'autre moitié du
même piston! Ceci ferait une boucle de contrainte
détéctée par Blender comme une erreur). C'est
pourquoi, les positions des centres des maillages sont si importants (
Figure
13-63).
Figure 13-63. Piston hydraulique avec tracking mutuel.
Sélectionnez une moitié du piston, sélectionnez le
maillage de l'axe de l'autre moitié du piston, et, dans le menu
contextuel
Object (
F7) et le paneau
Constraints,
ajoutez une
Constraint:
Track to. Les boutons suivants
X,Y... doivent être correctement configurés (
Figure
13-64).
Figure 13-64. Réglages de traque.
Si vous préférez le système "Old Track",
souvenez-vous d'enclancher le bouton
PowerTrack
dans le panneau
Anim Setting pour un meilleur résultat.
Maintenant, si vous passez en mode Pose et faites pivoter les os, le
piston coulissera normalement, comme il le ferait dans la
réalité. (Figure 13-65).
Figure 13-65. Bras et piston en mode Pose.
Le problème maintenant est que, puisque les pistons fonctionnent
avec de l'huile sous pression qui leur est injectée, pour un
modèle vraiement réaliste, nous devons ajouter des
tuyaux. Mais comment placer un tuyau qui se deforme, allant du bras au
piston Chaque bout devant être rattaché à des
parties rigides en rotation l'une par rapport à l'autre. Ceci
nécessite les
IK!
Figure 13-66. Ajouter un tuyau flexible.
D'abord ajoutez un maillage de la forme du tube que vous voulez
modéliser (
Figure 13-66).
Personnellement, je préfère dessiner le tube dans sa
position tordue comme une courbe
bevelled. On fait ceci en
ajoutant une courbe de Bézier, un cercle de Bézier, et en
utilisant le cercle de Bézier comme
BevOb
sur la courbe de Bézier. Ensuite convertissez-le en un maillage (
ALT-C)
pour pouvoir le déformer avec une armature.
Figure 13-67. Ajouter une armature au tube.
Maintenant, ajoutons une armature. Une paire d'os suffira. Cette
armature devra aller du bout "fixe" du tube (le haut du bras),
jusqu'à son autre extrémité "mobile" (l'une des
parties du piston). Ajoutez un troisième os qui sera
utilisé pour les
Inverse Kinematics solution (
Figure
13-67).
Vérifiez bien que l'armature est correctement "parentée"
à l'objet où la partie "fixe" du tube est... disons...,
fixée. Dans le cas qui nous intéresse, le bras du robot.
Ajoutez aussi un
Empty (objet vide) à
l'extrémité mobile du tube (
Figure 13-68).
Figure 13-68. L' "Empty" pour la solution IKA d'animation.
Figure 13-69. IKA constraint.
Parentez l'objet vide (
empty) à la partie "mobile" de la
structure. Dans ce cas, la partie extérieure du piston à
laquelle le tuyau est relié. En mode pose, allez dans le panneau
Object et au panneau
Constraints. Sélectionnez le
dernier os, celui qui commence là où le tube finit (!!!),
et ajoutez une
constraint. Séléctionnez
IK
solver comme type de
constraint et sélectionnez
l'objet vide récemment créé comme cible
Object
OB: (
Figure 13-69). Vous pouvez jouer avec la
tolérance
et les
itérations si vous le voulez.
Enfin "parentez" le tube à l'armature via l'option
Armature.
Créez des groupes de vertex si vous le voulez. Maintenant si,
une fois pasé en mode Pose, vous déplacez le bras, les
deux parties du piston se déplacent normalement, et l'objet vide
suit. Ceci oblige l'
IK Armature du tuyau à se
déplacer, pour suivre l'objet vide, ce qui a pour
conséquence de déformer le-dit tuyau (
Figure 13-69).
Figure 13-70. Le bras robotique complet en mode Pose.
Note:
Vous pouvez utiliser un os de l'armature, au lieu
d'un objet vide, comme un IK solver, mais dans ce cas vous ne
pourez pas "parenter" l'os à l'objet mobile. Vous pouvez d'une
autre manière, utiliser une constraint de Copy
Location, mais ceci est moins facile car la copy location
déplacera le bout de l'armature vers le centre de l'objet
mobile, ce qui n'est pas le bon emplacement.
Url de la page :
http://blender.doc.fr.free.fr/lecture_ouverte/index.php?page=137