Cette activité est basée sur plusieurs tutos plus ambitieux qu'on peut trouver pour l'instant sur youtube. Par exemple :
Blender Character Creation: Rigging 1/2 par Sebastian Lague.
Si vous voulez aller plus loin, n'hésitez surtout pas à aller voir l'original.
Dans l'activité précédente, nous avons vu :
Néanmoins l'influence sur l'objet restait une influence globale. Nous allons voir comment parvenir cette fois à donner l'impression d'un réel squelette sous la structure de l'objet.
Voici ce qu'on peut obtenir en quelques minutes de travail :
Bien entendu, plus le travail sera minutieux, plus le résultat sera de qualité.
Nous allons construire notre armature de façon à animer le modèle 3D de la partie précédente.
01° Créer un "cube" ayant les caractéristiques suivantes :
02° Passer en mode EDIT et utiliser l'outil SUBDIVIDE pour rajouter plusieurs vertex : cela permettra à votre forme d'être facilement déformable.
03° Passer en mode OBJECT et utiliser l'outil SMOOTH pour adoucir la forme de votre objet.
04° Rajouter une armature et étirer celle-ci sur toute la hauteur de votre forme :
05° Passer en mode EDIT et utiliser SUBDIVIDE pour obtenir 4 os dans votre armature. Cela vous permet d'obtenir des os correctement connectés entre eux, comme si vous avez utilisé EXTRUDE. On notera que j'ai activé NAMES (pour voir les noms des os) et XRAY (pour les voir constamment) sur cette armature.
05° Passer le mode mode de visualisation ENVELOPPE des os :
06° En mode EDIT, cliquer sur l'un des os : vous allez pouvoir visualiser (en gris clair) la zone d'espace sur laquelle l'os pourra tenter d'agir.
On notera que l'option DEFORM est activé : cet os pourra déformer les vertex des objets sur lesquelles il a une influence.
07° Modifier les valeurs de certaines valeurs d'enveloppe pour comprendre leurs influence sur l'enveloppe/zone d'influence de l'os. Revenir ensuite à la configuration de base.
08° En mode OBJECT, sélectionner le rectangle et l'armature puis utiliser CTRL+C et CTRL+V pour obtenir au final 3 formes similaires.
Vous devriez obtenir ceci :
Si vous avez eu un problème ou que vous revenez ici après avoir oublié de sauvegarder votre réalisation, voici un fichier blend correspondant : Les Trois structures.
Passons aux choses sérieuses.
09° En mode OBJECT, sélectionner l'un des piliers et son armature. En utilisant CTRL+P et ARMATURE DEFORM with empty groups, créer une liaison entre le solide et l'armature.
En regardant dans OUTLINER, on peut voir que la structure a changé :
Pour voir les vertex qui sont associés à un groupe de Vertex, il "suffit" d'être en mode EDIT et d'aller dans le menu PROPERTIES - DATA :
10° Aller dans ce menu et utiliser SELECT pour vérifier que le groupe de vertex est vide (c'est normal, empty group veut un peu dire groupe vide !). Tenter ensuite de modifier le solide en agissant sur l'os en mode POSE. Vous devriez constater que ... rien ne bouge sur votre solide : c'est normal. Aucun vertex du solide n'est lié à votre armature.
11° Sélectionner quelques vertex (SHIFT+Clic droit pour en prendre plusieurs). Appuyer sur ASSIGN pour rajouter des vertex à l'un des groupes liés à un os en particulier. Tenter ensuite de manipuler l'os.
Remarque : Pensez à B ou C pour sélectionner plusieurs vertex à la fois en mode Box ou Circle.
Voici pour ce mode. En résumé :
Cette méthode est donc un peu longue ... Et elle est très basique : le vertex a une influence totale s'il est sélectionné (weight = 1) et aucune s'il n'est pas sélectionné (weight = 0).
Et comment visualiser les vertex choisis ou pas ? C'est simple : il suffit de se placer en mode OBJECT, de sélectionner votre objet puis de se mettre en mode WEIGHT PAINT :
Ici, on voit bien que l'os BONE va totalement influencer les vertex en rouge et laisser tranquille ceux en bleu.
Si on passe sur un autre os, Bone.003, on voit qu'aucun vertex ne sera influencé par le déplacement de cet os. C'est normal, nous avons utilisé ARMATURE DEFORM WITH EMPTY GROUPS :
Et on ne peut pas avoir des choses entre les deux extrêmes ?
Si, bien entendu.
Dans ce mode, nous allons pouvoir imposer à des zones de l'objet d'être beaucoup influencées, peu influencées ou pas influencées par un os particulier.
L'influence de 0 (0%) à 1 (100%) est codée visuellement par une couleur :
Pour changer l'influence d'un os sur vos Vertex, il suffit d'utiliser la brosse et de gérer la valeur de votre weight :
Pour rappel : on peut peindre et sélectionner les vertex situés derrière le solide en activant le bouton LIMIT SELECTION TO VISIBLE.
L'onglet Option vous permet également de modifier la valeur de la transparence (couche ALPHA).
Pour rappel, voici un fichier blend correspondant à 3 structures : Les Trois structures.
12° Appliquer une liaison ARMATURE DEFORM WITH EMPTY GROUPS sur l'un des piliers puis peindre les zones d'influence de l'os du bas puis l'os du haut de façon à obtenir une forte zone d'influence à proximité de l'os et une zone d'influence plus faible lorsqu'on commence à s'éloigner de l'os.
Un résultat possible en image :
Si on utilise le second mode, on laisse Blender gérer l'influence des os sur les vertex en fonction de l'enveloppe autour de l'os :
13° Sélectionner un pilier et son armature. Appliquer avec CTRL+P une liaison ARMATURE DEFORM WITH ENVELOPE WEIGHT sur l'un des piliers. Passer ensuite en mode WEIGHT PAINT pour visualiser ce qu'a fait Blender automatiquement :
Pour l'os du bas :
Pour l'os juste au dessus :
Comme vous pouvez le voir, Blender fait plutôt bien le travail.
Si vous bloquez, voici la manipulation en image :
Ici, c'est l'enveloppe qui fait tout le travail. Si l'enveloppe n'est pas assez grande pour atteindre les vertex, il faut se souvenir comment modifier cette largeur :
14° Modifier le rayon de l'enveloppe pour voir les conséquences sur le poids(weight) des vertex. Pour rappel, il faut sélectionner votre armature et partir dans le mode EDIT.
Il nous reste à voir le mode automatique. Les algoritmes de Blender tournent à plein régime et tente de faire le lien entre votre armature et votre objet. Le résultat est souvent de bonne qualité. Mais lorsque l'armature et l'objet sont complexes, l'automatisation n'est pas toujours très réussi.
15° Utiliser le dernier mode de liaison et visualiser en WEIGHT PAINT le résultat.
Vous devriez constater que les zones de contrôles sont plus concentrées et un peu plus similaires à ce que devrait faire un vrai os.
Pour l'os du bas :
Pour l'os juste au dessus :
Pour finir, nous allons tenter d'animer le personnage que vous avez créé quelques activités plus tôt. Ou plutôt, nous allons commencer à l'animer. La réalisation totale de cette animation et obtenir ainsi un personnage autonome va faire l'objet d'une autre activité.
16° Aller chercher votre personnage ou récuperer le personnage test ICI.
Si vous n'avez toujours pas désactivé vos images de background ayant servi à créer votre personnage, il est temps de le faire (pour afficher le menu Properties, il faut utiliser la touche N :
17° Rajouter une armature comportant deux os comme indiqué sur l'image ci-dessous. Nommer les deux os corps1 et corps2. Créer un léger angle pour que le dos ai un angle naturel.
18° Faire une extrusion de la tête de l'os du bas de façon à créer un nouvel os qu'on nommera hanche (hip en anglais).
19° Extruder la queue de l'os du haut pour créer l'os du cou et l'os de la tête.
20° Créer un nouvel os à l'aide de l'outil DUPLICATE en mode EDIT.
21° Supprimer le parentage visible via le trait en pointillé en supprimant le lien grace au menu PROPERTIES - BONE - RELATIONS :
22° Déplacer la queue du nouvel os avec l'outil TRANSLATE puis faire un EXTRUDE pour créer l'avant-bras. Nommer exactement ces os bras.L et avantbras.L. La codification POINT L (L pour Left) va permettre à Blender de comprendre qu'il s'agit du bras gauche.
23° Sélectionner la tête du bras et créer un lien avec l'os corps2 :
Et on obtient :
Il nous reste à créer la jambe gauche de la même façon :
24° Créer l'os de la cuisse en utilisant un DUPLICATE sur le bassin et en le déplacant au bon endroit.
25° Créer le tibia en utilisant un EXTRUDE sur la cuisse.
26° Rendre le bassin PARENT de vos os de jambe.
27° Nommer vos os cuisse.L et tibia.L.
Bien. Il nous reste à créer automatiquement les membres de droite à l'aide des membres de gauche qui portent tous une extension .L dans leurs noms.
Pour cela, il faut d'abord vérifier que notre armature soit bien symétrique par rapport y (ou l'axe x) :
28° Sélectionner tous les os avec
Et comme par magie, on crée les bons os et bien renommés en plus ! Il reste encore un problème : si vous passez en mode POSE, vous devriez constater que les deux morceaux HAUT et BAS de votre armature sont indépendantes :
29° Revenir en mode EDIT, faire un DUPLICATE et orienter l'os de façon à ce que la tête rond pointe vers les deux autres têtes. Nommer cet os controle.
30° Créer un lien de parenté (soit depuis le menu de l'os ou avec un CTRL+P) vers controle pour les os corps1 et hanche. Voilà vous avez un beau squelette.
Et voilà, c'est presque fini : plus qu'à créer le lien entre le solide et l'armature. 31° Revenir en mode OBJECT et créer le lien PARENT-ENFANT en sélectionnant d'abord la forme 3D puis l'armature. Utiliser CTRL+P pour créer la liaison en ENVELOPE WEIGHT.
Vous pourrez constater que le résultat n'est pas terrible terrible. Il vous reste à modifier l'influence sur les vertex avec le mode WEIGHT PAINT. Le plus facile est encore d'augmenter la zone d'influence des os. Et voilà en plaçant une caméra et en créant quelques keyframes vous devriez parvenir à animer de façon basique votre squelette. Attention : le plus simple est d'utiliser les options VISUAL lorsque vous allez vouloir rajouter vos keyframes avec la touche I.