Retargeting
Le retargeting dans Unreal Engine permet de partager et de transférer des animations entre des personnages de proportion ou de squelette différent. Ceci se fera en utilisant des IK Rigs et IK Retargeting.
Les IK Rigs sont utilisés pour créer un retargeting d’animation entre différents SkeletalMeshes. Cet asset vous permettra de transférer des animations avec précision entre des squelettes qui peuvent ou non correspondre, tout en offrant un flux de travail simplifié.
Pour effectuer un retargeting avec un IK Retargeter , vous devrez avoir créé un IK Rig pour chacun de vos personnages en passant par leurs SkeletalMesh. Ensuite il ne vous restera plus qu’a utiliser l’IK Retargeter pour éditer, sauvegarder et importer les poses de retargeting du personnage source sur le personnage cible.
IK Rig in Unreal Engine | Unreal Engine 5.1 Documentation
IK Rig Animation Retargeting in Unreal Engine | Unreal Engine 5.0 Documentation
Dams
Mixamo
L’importation de fichiers FBX de mocap issus de Mixamo dans Unreal Engine peut être effectuée en quelques étapes simples.
Je vais recuperer des animation dans Mixamo qui est une application web qui permet d’animer des personnages 3D. Elle offre une collection de personnages 3D de haute qualité, prêts à être utilisés dans vos projets créatifs. Vous pouvez également upload votre propre personnage personnalisé sur Mixamo et obtenir un squelette humain complet automatiquement équipé, adapté à votre modèle et prêt à être animé. Moi ce qui m’interresse c’est que Mixamo propose également une bibliothèque de milliers d’animations de personnages humanoide, capturées par des acteurs professionnels du mouvement. Vous pouvez prévisualiser et modifier directement chaque animation avec Mixamo pour contrôler l’apparence et la sensation de chaque mouvement. Mixamo est disponible gratuitement pour toute personne disposant d’un identifiant Adobe et ne nécessite pas d’abonnement à Creative Cloud.
Telechargement de mocap.
Tout d’abord, connectez-vous à votre compte Mixamo et sélectionnez un personnage et une animation de votre choix. Ensuite, téléchargez l’animation en format FBX pour Unreal Engine. Je vqia recuperer 5 animations.
Import dans UE
Une fois que vous avez téléchargé le fichier FBX, ouvrez Unreal Engine et votre projet.
Pour un premier import, dans la fenêtre “Content Browser”, cliquez sur “Import” et sélectionnez le fichier FBX téléchargé depuis Mixamo. Suivez les instructions de l’assistant d’importation pour importer le SkeletalMesh, le Skeleton et l’animation dans votre projet Unreal Engine.
Composition de l’asset Mixamo:
1 – SkeletalMesh
1 – Skeleton
1 – PhysicAsset
2 – Materials
1 – AnimationSequences
Pour les imports suivants, vous pouvez importer uniquement les animations en sélectionnant l’option “Animation” lors de l’importation. Assurez-vous de connecter l’animation au SkeletalMesh et au Skeleton existants pour que l’animation fonctionne correctement avec le personnage.
Resultat:
Voici nos 5 animations sequence importee
Analyse de notre Asset :
Notre asset se compose de :
11 – SkeletalMesh
1 – Skeleton
1 – PhysicAsset
45 – Materials
ressources : Stylized Character Kit: Casual 01 in Characters – UE Marketplace (unrealengine.com)
Pourquoi un retarget?
Ce que je veux faire c’est transferer les animation du mannequin Mixamo sur mon personnage.
Observons les skeletons de nos deux assets, nous observons:
- Poses neutre differente
- Hierarchie de bones differentes
- Convention de nommage differente.
Voila pourquoi nous devons passe par du retarget. Si nous essayons de transferer les animations directement elles ne fonctionneraient pas.
IK Rig :
Creation des IKRig
La premiere etape dans notre process est de cree pour chaque asset un IK Rig
ressources : IK Rig in Unreal Engine | Unreal Engine 5.1 Documentation
Assignation d’un skeltal Mesh dans l’IKRig editor
Definition du retarget root
Le “Retarget Root” permet de définir et de transférer le mouvement de la racine du personnage de manière proportionnelle. Généralement il c’est l’os du bassin ou de la hanche.
Pour définir le “Retarget Root”, dans IK Rig accédez au panneau “Hierarchy”, cliquez avec le bouton droit sur l’os et sélectionnez “Set Retarget Root”. Une fois cela fait, le “Retarget Root” est indiqué avec l’os sélectionné dans les panneaux “Hierarchy” et « IK Retargeting »2.
Definition des chaines
Les suite de bones que vous voulez transférer dans le processus de retargeting doivent être définis sur les IK Rigs source et cible. Cela se fait en définissant des chaînes de jointures plutôt que des bone individuels. Cela offre une grande flexibilité pour retargeter des personnages ayant des structures osseuses très différentes.
Pour créer une chaîne, cliquez sur “Add (+) New Chain” dans le panneau “IK Rig”, ce qui créera une chaîne vide. Les chaînes nécessitent que les paramètres suivants soient définis: Nom de la chaîne, Bone de départ et Bone de fin.
A vous de voir si seulement les chaînes des membres principaux sont necessaire ou si les membres mineurs tels que les doigts étant facultatifs. Pour ma part j’aibase mon IKRig sur le model des metahuman qui defini tous les membres et bones twist.
Ajout d’un solveur Full Body IK
Ajouter ce solveur dans les IK Rig va être bénéfique pour le retargeting.
Traditionnellement, le retargeting implique de correspondre les positions et les rotations des bones d’un personnage source à ceux d’un personnage cible. Cependant, cela ne garantit pas que les mouvements du personnage source seront reproduits de manière réaliste sur le personnage cible, car la cinématique inverse ne prend pas en compte la forme et la taille du corps du personnage cible.
C’est là qu’intervient le Full Body IK. Le solveur Full Body IK permet de résoudre les mouvements d’un personnage en fonction de la position et de l’orientation de son corps et de ses membres. En utilisant un solveur Full Body IK pour le retargeting, les mouvements du personnage source sont adaptés à la forme et à la taille du personnage cible, ce qui peut donner des résultats plus réalistes et plus naturels.
L’ajout d’un solveur Full Body IK dans les IKRig pour le retargeting peut améliorer la qualité des animations et rendre le processus de retargeting plus efficace et plus précis.
Utilisation du « Connect Goal to Selected Solver »
Il permet de lier un objectif (goal) à un solveur (solver) sélectionné dans une chaîne cinématique de squelette (skeleton).
Dans le contexte de l’IKRig, cela signifie que vous pouvez sélectionner un solveur spécifique (par exemple, un solveur de membre inférieur) et y connecter un objectif (par exemple, le pied d’un personnage). Le solveur peut alors résoudre la cinématique inverse pour placer le pied de manière réaliste sur le sol, en fonction de la position et de la rotation de l’objectif.
En connectant un goal à un solveur spécifique, vous pouvez contrôler de manière précise et granulaire la manière dont les différents membres du personnage réagissent aux mouvements de Goal. Cela peut permettre de créer des animations plus réalistes et fluides, en particulier lors de mouvements complexes ou d’interaction avec l’environnement.
L’utilisation du « Connect Goal to Selected Solver » permet de connecter un Goal à un solveur spécifique dans la chaîne cinématique de squelette, pour contrôler précisément la position et l’orientation des membres du personnage.
L’utilisation de l’option « Add Settings On Bone »
(ajouter des paramètres à l’os) dans les IK Rig de Unreal Engine peut être bénéfique car elle permet de contrôler plus précisément les mouvements et les orientations des os d’un personnage.
Avec cette option, vous pouvez ajouter des paramètres tels que la rotation maximale et minimale, la position maximale et minimale, la vitesse de rotation, la vitesse de translation, etc. à un os spécifique du personnage. Cela peut aider à limiter les mouvements indésirables et à améliorer la qualité de l’animation.
Par exemple, si vous souhaitez limiter la rotation de l’os de l’épaule pour empêcher le bras du personnage de traverser son torse, vous pouvez ajouter des paramètres de rotation maximale et minimale à cet os. Si vous souhaitez que le personnage garde la tête droite en toutes circonstances, vous pouvez ajouter des paramètres de rotation maximale et minimale à l’os du cou.
En somme, l’utilisation de l’option « Add Settings On Bone » dans les IK Rig de Unreal Engine peut permettre de contrôler plus précisément les mouvements et les orientations des os d’un personnage, améliorant ainsi la qualité de l’animation et offrant plus de contrôle créatif aux animateurs.
IK Retageter:
Creation de l’ IKRetargeter
La premiere etape dans notre process est de cree l’IKRetargeter qui va servir a transferer l’animation de Mixamo sur Bobbies
ressources : IK Rig Animation Retargeting in Unreal Engine | Unreal Engine 5.1 Documentation
Assignation des IKRIG
BasePose : T to A or T to A
Il est important de comprendre ce que sont les poses A et T. La pose A est une pose de référence où les bras du personnage sont légèrement écartés du corps et les jambes sont légèrement écartées. La pose T, en revanche, est une pose où les bras du personnage sont étendus horizontalement à partir du corps et les jambes sont rapprochées.
Pour transférer une animation d’un asset en A-Pose ou T-Pose ou vice versa il faudra mettre en place une base pose pour le IK Retargeting. Pour ce faire une fois l’IK Retargeter ouvert, vous pouvez utiliser l’outil Retarget Pose pour créer, éditer, sauvegarder et importer des bases poses sur le personnage source ou cible. Ensuite, ajustez les os du personnage pour qu’ils correspondent à la Base Pose choisie.
Une fois que vous avez créé votre base pose, vous pouvez l’utiliser pour le IK Retargeting. Unreal utilisera alors cette base pose pour ajuster automatiquement les animations du personnage afin qu’elles correspondent à la base pose choisie.
En utilisant une base pose pour le IK Retargeting dans Unreal, vous pouvez facilement gérer la différence entre la A pose et T pose et assurer que vos animations fonctionnent correctement sur différents personnages. Cela peut vous faire gagner du temps et des efforts lors de la création d’animations pour vos projets Unreal Engine.
Le « stride warping » :
est une technique utilisée pour améliorer la fluidité des animations des personnages. Dans ce contexte, « IKReargter » est une fonctionnalité proposée, qui permet d’appliquer cette technique.
La technique du « stride warping » consiste à ajuster légèrement la position d’un personnage à chaque étape de son animation de marche. Cela permet de corriger les petits écarts qui peuvent survenir entre les pas de marche et de donner l’impression que le personnage se déplace avec plus de fluidité.
La fonctionnalité « IKReargter » de Unreal permet de mettre en place cette technique de manière automatique pour les animations d’un personnage. Elle utilise pour cela un algorithme qui calcule les ajustements à apporter à la position du personnage en fonction de la vitesse de déplacement, de la position des pieds et de l’orientation du personnage.
Il est nécessaire de configurer les paramètres de l’animation et d’activer la fonctionnalité pour que les ajustements de position soient appliqués pendant l’animation.
IK Retargeting – 5.1 Features at a Glance | Epic Developer Community (epicgames.com)




