Mocap 2 Biped

Récupérer des données de motion capture et les convertir en .BIP dans 3ds Max

Donc on va travailler cette pose T en frame -1 qui ne contient aucune clef du BVH.
On se place donc en frame -1 en cliquant sur l’indicateur de début de timeline dans le Transport Control qui montre un 0 et un met -1. On déplace aussi le curseur de ce Transport Control sur la frame -1.
Ensuite dans le Key Control, on clique sur la petite clef pour activer les clefs automatiques. Cette option va permettre de générer la clef sur le simple fait de mettre le BVH en pose T.
Ensuite on sélectionne tous les bones du BVH avec le bouton central de la souris pour être sur de ne pas manquer un bones qui pourraient être masqués (la sélection par le bouton central de la souris permet de sélectionner tout ce qui se trouve dans le cadre de la sélection, même ceux masqués par des objets).
Une fois la sélection faite, on active l’outil de transformation Rotation et on indique les valeurs 0 sur les 3 axes dans les indicateurs en bas à droite du viewport.
Voici l’image qui montre un peu tout cela en une fois :

La petite icône toute seule à droite de la vue schématique est le filtre de sélection pour ne sélectionner que des bones avec le clic central, c’est pratique de l’activer si nous ne sommes pas sur de ne sélectionner que des bones.

Maintenant que le BVH est en pose T on va pouvoir le rigger. Mais cette fois on va exploiter une fonction bien pratique de Motionbuilder que nous n’avons pas pu utiliser avec le Biped dans la version 2015 du logiciel (version utilisée pour ce tutoriel).

On reprend l’outil Character dans l’Asset Brower comme pour le biped et on le drag & drop sur le hip du BVH (le bone). Une option Characterize apparait et on clique dessus pour l’activer.

On choisi Biped, car c’est une structure bipédique.

Et on renomme le Character dans le Navigator pour ne rien confondre plus tard.

Le BVH est charactérisé de façon automatique, Motionbuilder a reconnu la structure et a assigné correctement les bones dans les bons slots. Cela est possible car il intègre un template de la structure BVH pour permettre de reconnaître grâce aux noms types des bones BVH.
Ce template a existé pour les Biped dans les versions antérieures à 2015 de Motionbuilder, mais il n’y est plus désormais, ce qui explique qu’il faille faire les assignations manuellement. C’est dommage pour une techno maison de ne pas conserver le template permettant d’accélérer le processus. D’autant qu’Autodesk montre une volonté croissante de liaison entre ses différentes solutions 3D.

Une fois le BVH charactérisé, il faut récupérer l’animation dans le Control Rig.
Et pour cela, il faut plotter l’animation contenue dans les bones du BVH sur le Control Rig de ce dernier.
On clique sur le bouton menu du Character Control (le gros bouton bleu) > Bake (plot) > Bake (plot) To Control Rig

Note: dans l’exemple, l’animation est à 30 fps, on peut voir le réglage dans le Transport Control, et un plot se fait à 30 fps par défaut. Mais s’il faut plotter à une fréquence différente, il faut faire la même opération qu’on vient de faire mais en cliquant sur les […] qui suivent le nom de la fonction Back (pot) to Control Rig.

Une fois le control rig plotté, il va se générer et on sélectionne FK/IK sur la boite de dialogue.

Le BVH est maintenant parfaitement riggé dans Motionbuilder et l’animation qu’il contient est récupérée dans le Control Rig.

On peut rendre le Biped visible en sélectionnant son Character et en cliquant sur les boutons des Effectors IK et FK dans le Character Control.

Toujours dans le Character Control, et avec le Biped en focus, on défini la source du Character du Biped comme étant le Control Rig Mocap (au lieu du Control Rig Biped).

Cela a pour fonction de transposer l’animation du BVH sur le Biped en temps réel et sans affecter les Effectors du Biepd pour l’instant. En effet, à ce stade, le Control Rig du Biped ne contient toujours pas de clefs d’animation, il ne fait que suivre celui du BVH.

Ce qui fait que visuellement, le Control Rig du Biped « se désactive » dans le viewport et nous voyons la suite de bones du Biped.

On vérifie que le Biped bouge bien comme le BVH en déplaçant le controleur du Transport Control.

Vu les structures des Biped et BVH dans la scène, il ne devrait pas y avoir de soucis dans le retargetting du BVH vers le Biped. L’animation doit se transposer sans soucis.

Maintenant il faut récupérer l’animation pour la mettre « en dur » dans le Biped. On refait la manipulation du plot dans le Character Control: Menu > bake (plot) > Backe (plo) to Control Rig.

Maintenant le Control Rig du biped dispose de l’animation du BVH et le Character du Biped est de nouveau indépendant, il retrouve son propre Control Rig en source.
Le Control Rig dispose des clefs d’animation mais pas les bones, et sans eux, il n’est pas possible d’importer l’animation dans 3dsmax.
Il faut donc refaire le plot mais cette fois nous choisissons l’option bake (plot) to Skeleton au lieu de bake (plot) to Control Rig.

Note: Nous aurions pu faire directement un bake (plot) to Skeleton quand le Character du Biped avait le Control Rig du BVH en source, mais j’ai choisi de montrer cette étape supplémentaire car il faut parfois retoucher l’animation sur le personnage cible pour des questions de morphologies différentes entre celui qui était mocapé et le perso virtuel.
Et autant le faire avec les outils internes de Motionbuiler et son Control Rig.

Et voici le résultat :

Les bones du Biped ont récupérés les frames du BVH et il bouge à l’identique.

Nous pouvons sauvegarder le fichier après avoir supprimer la frame de la pose T du BVH pour ne pas la récupérer dans le Biped et ainsi casser la boucle d’animation. Pour ce faire, on sélectionne tous les bones du Biped avec le filtre actif et on clique droit sur la clef de la frame -1 pour faire Delete.
On remet le timerange du Transport Control à 0 et c’est fini.

Chargement....

A Lire également