Aller au contenu principal

Comment utiliser le plugin avec des personnages personnalisés

Ce guide vous explique comment configurer Runtime MetaHuman Lip Sync pour des personnages non-MetaHuman. Ce processus nécessite une familiarité avec les concepts d'animation et de rigging. Si vous avez besoin d'aide pour l'implémenter sur votre personnage spécifique, vous pouvez contacter le support professionnel à [email protected].

Prérequis

Avant de commencer, assurez-vous que votre personnage remplit ces conditions :

  • Possède un squelette valide
  • Contient des morph targets (blend shapes) pour les expressions faciales
  • Idéalement possède 10+ morph targets définissant des visèmes (plus de visèmes = meilleure qualité de lip sync)

Le plugin nécessite de mapper les morph targets de votre personnage aux visèmes standards suivants :

Sil -> Silence
PP -> Bilabial plosives (p, b, m)
FF -> Labiodental fricatives (f, v)
TH -> Dental fricatives (th)
DD -> Alveolar plosives (t, d)
KK -> Velar plosives (k, g)
CH -> Postalveolar affricates (ch, j)
SS -> Sibilants (s, z)
NN -> Nasal (n)
RR -> Approximant (r)
AA -> Open vowel (aa)
E -> Mid vowel (e)
IH -> Close front vowel (ih)
OH -> Close-mid back vowel (oh)
OU -> Close back vowel (ou)

Note : Si votre personnage possède un ensemble différent de visèmes (ce qui est probable), vous n'avez pas besoin de correspondances exactes pour chaque visème. Des approximations sont souvent suffisantes—par exemple, associer le visème SH de votre personnage au visème CH du plugin fonctionnerait efficacement car ce sont des sons postalvéolaires proches.

Référence de mappage des visèmes

Voici les correspondances entre les systèmes de visèmes courants et les visèmes requis par le plugin :

ARKit fournit un ensemble complet de blendshapes pour l'animation faciale, incluant plusieurs formes de bouche. Voici comment les mapper aux visèmes de RuntimeMetaHumanLipSync :

Visème RuntimeMetaHumanLipSyncÉquivalent ARKitNotes
SilmouthClosePosition neutre/repos
PPmouthPressLeft + mouthPressRightPour les sons bilabiaux, utilisez les deux formes de pression ensemble
FFlowerLipBiteLeft + lowerLipBiteRightCréent le contact lèvre-dents pour "f/v"
THtongueOutARKit offre un contrôle direct de la langue
DDjawOpen (léger) + tongueUpCombinaison d'une légère ouverture de mâchoire et position de la langue
KKmouthLeft ou mouthRight (léger)Une légère traction du coin de la bouche approche les sons vélaires
CHjawOpen (léger) + mouthFunnel (léger)Combinaison pour les sons postalvéolaires
SSmouthFrownUtilisez un léger froncement pour les sibilantes
NNjawOpen (très léger) + mouthCloseBouche presque fermée avec une légère ouverture de mâchoire
RRmouthPucker (léger)Léger arrondi pour les sons "r"
AAjawOpen + mouthOpenCombiné pour les sons voyelles largement ouverts
EjawOpen (léger) + mouthSmilePosition mi-ouverte avec un léger sourire
IHmouthSmile (léger)Léger écartement des lèvres
OHmouthFunnelForme arrondie ouverte
OUmouthPuckerLèvres étroitement arrondies

Création d'un Pose Asset personnalisé

Suivez ces étapes pour créer un Pose Asset personnalisé pour votre personnage qui sera utilisé avec le nœud Blend Runtime MetaHuman Lip Sync :

1. Localisez le Skeletal Mesh de votre personnage

Trouvez le skeletal mesh qui contient les morph targets (blend shapes) que vous souhaitez utiliser pour l'animation de synchronisation labiale. Il peut s'agir d'un mesh complet ou seulement d'un mesh facial, selon la conception de votre personnage.

2. Vérifiez les Morph Targets disponibles

Assurez-vous que votre skeletal mesh possède les morph targets appropriés pouvant être utilisés comme visèmes pour l'animation de synchronisation labiale. La plupart des personnages avec support d'animation faciale devraient avoir des morph targets de phonèmes/visèmes.

Exemple de morph targets dans un personnage

3. Créez une Animation de Pose de Référence

  1. Allez dans Create Asset -> Create Animation -> Reference Pose
  2. Entrez un nom descriptif pour la séquence d'animation et enregistrez-la à un emplacement approprié
  3. La séquence d'animation créée s'ouvrira automatiquement, montrant une animation vide jouant en boucle

Création d'un asset de pose de référence Nommage de l'asset de pose de référence

  1. Cliquez sur le bouton Pause pour arrêter la lecture de l'animation pour faciliter l'édition

Mise en pause de la lecture d'animation

4. Éditez la Séquence d'Animation

  1. Cliquez sur Edit in Sequencer -> Edit with FK Control Rig
  2. Dans la boîte de dialogue Bake to Control Rig, cliquez sur le bouton Bake to Control Rig sans modifier les paramètres

Édition avec FK Control Rig Baking vers Control Rig

  1. L'éditeur passera en Animation Mode avec l'onglet Sequencer ouvert
  2. Définissez le View Range End Time à 0016 (ce qui définira automatiquement Working Range End à 0016 également)
  3. Faites glisser le bord droit du curseur jusqu'à la fin de la fenêtre du séquenceur

5. Préparer les courbes d'animation

  1. Retournez à l'asset Animation Sequence et localisez les morph targets dans la liste Curves (s'ils ne sont pas visibles, fermez et rouvrez l'asset Animation Sequence)
  2. Supprimez tous les morph targets qui ne sont pas liés aux visèmes ou aux mouvements de bouche que vous souhaitez utiliser pour le Lip Sync

6. Planifiez votre mapping de visèmes

Créez un plan de mapping pour faire correspondre les visèmes de votre personnage à l'ensemble requis par le plugin. Par exemple :

Sil -> Sil
PP -> FV
FF -> FV
TH -> TH
DD -> TD
KK -> KG
CH -> CH
SS -> SZ
NN -> NL
RR -> RR
AA -> AA
E -> E
IH -> IH
OH -> O
OU -> U

Notez qu'il est acceptable d'avoir des correspondances répétées lorsque le jeu de visèmes de votre personnage ne possède pas de correspondances exactes pour chaque visème requis.

7. Animez chaque visème

  1. Pour chaque visème, animez les courbes de morph target pertinentes de 0.0 à 1.0
  2. Démarrez chaque animation de visème sur une frame différente
  3. Configurez des courbes supplémentaires si nécessaire (ouverture de la mâchoire/bouche, position de la langue, etc.) pour créer des formes de visèmes naturelles

8. Créer un Pose Asset

  1. Allez dans Create Asset -> Pose Asset -> Current Animation
  2. Entrez un nom descriptif pour le Pose Asset et enregistrez-le à un emplacement approprié
  3. Le Pose Asset créé s'ouvrira automatiquement, affichant des poses comme Pose_0, Pose_1, etc., chacune correspondant à un visème
  4. Prévisualisez les poids des visèmes pour vérifier qu'ils fonctionnent comme prévu

Création d'un pose asset Nommage du pose asset Pose asset avec visèmes

9. Finaliser le Pose Asset

  1. Renommez chaque pose pour qu'elle corresponde aux noms des visèmes de la section Prerequisites
  2. Supprimez toutes les poses inutilisées

Configuration de la gestion audio et du blending

Une fois votre Pose Asset prêt, vous devez configurer les nœuds de gestion audio et de blending :

  1. Localisez ou créez l'Animation Blueprint de votre personnage
  2. Configurez la gestion audio et le blending en suivant les mêmes étapes que celles documentées dans le guide de configuration standard du plugin
  3. Dans le nœud Blend Runtime MetaHuman Lip Sync, sélectionnez votre Pose Asset personnalisé au lieu du Pose Asset MetaHuman par défaut

Sélection du Pose Asset personnalisé

Combinaison avec des animations corporelles

Si vous souhaitez effectuer la synchronisation labiale parallèlement à d'autres animations corporelles :

  1. Suivez les mêmes étapes que celles documentées dans le guide standard du plugin
  2. Assurez-vous de fournir les noms corrects des os du squelette du cou de votre personnage au lieu d'utiliser les noms d'os MetaHuman

Résultats

Voici des exemples de personnages personnalisés utilisant cette configuration :

Exemple 1 : Synchronisation labiale avec un personnage personnalisé

Exemple 2 : Synchronisation labiale avec un système de visèmes différent

Exemple 3 : Synchronisation labiale avec un système de visèmes différent

La qualité de la synchronisation labiale dépend en grande partie du personnage spécifique et de la qualité de la configuration de ses visèmes. Les exemples ci-dessus démontrent le fonctionnement du plugin avec différents types de personnages personnalisés dotés de systèmes de visèmes distincts.