Aller au contenu principal

Projets de démonstration

Pour vous aider à démarrer rapidement avec Runtime MetaHuman Lip Sync, deux projets de démonstration prêts à l'emploi sont disponibles. Tous deux sont construits avec Unreal Engine 5.6 (et pris en charge sur UE 5.7+), sont uniquement Blueprint, et fonctionnent en multi-plateforme sur Windows, Mac, Linux, iOS, Android, ainsi que sur les plateformes basées sur Android (incluant Meta Quest).

Projets de démonstration disponibles

Un flux de travail conversationnel complet pour PNJ IA combinant la reconnaissance vocale, un chatbot IA (LLM), la synthèse vocale et la lecture audio avec synchronisation labiale en temps réel – le tout exécuté ensemble dans un seul projet.

Aperçu du pipeline

🎤 Microphone → Speech Recognition → 💬 LLM Chatbot → 🔊 Text-to-Speech → 👄 Lip Sync + Playback

Vidéo en vedette

Téléchargements

Plugins requis et optionnels

Le projet de démonstration est modulaire - vous n'avez besoin que des plugins pour les fournisseurs que vous souhaitez utiliser.

PluginObjectifRequis ?
Runtime MetaHuman Lip SyncAnimation de synchronisation labiale✅ Toujours
Runtime Audio ImporterCapture et traitement audio✅ Toujours
Runtime Speech RecognizerReconnaissance vocale hors ligne (whisper.cpp)✅ Toujours
Runtime AI Chatbot IntegratorLLMs externes (OpenAI, Claude, DeepSeek, Gemini, Grok, Ollama) et/ou TTS externe (OpenAI, ElevenLabs)🔶 Optionnel*
Runtime Local LLMInférence LLM locale via llama.cpp (Llama, Mistral, Gemma, etc., modèles GGUF)🔶 Optionnel*
Runtime Text To SpeechTTS local via Piper et Kokoro🔶 Optionnel*

* Vous avez besoin d'au moins un fournisseur LLM et d'au moins un fournisseur TTS. Combinez librement (par exemple, LLM local + TTS ElevenLabs, ou LLM OpenAI + TTS local).

Architecture modulaire

Le projet de démonstration est entièrement modulaire. Dans le dossier Content, vous trouverez un dossier Modules qui contient trois sous-dossiers :

Content/
└── Modules/
├── RuntimeAIChatbotIntegrator/ ← External LLMs and/or external TTS
├── RuntimeLocalLLM/ ← Local LLM via llama.cpp
└── RuntimeTextToSpeech/ ← Local TTS via Piper/Kokoro

Si vous n'avez pas acquis un (ou plusieurs) des plugins optionnels, supprimez simplement le(s) dossier(s) correspondant(s). Les assets de base du projet de démonstration (instance de jeu, widgets, etc.) ne font pas référence à ces modules directement, donc leur suppression n'entraîne pas d'erreurs de référence d'asset. L'interface de configuration masquera automatiquement tout fournisseur dont le dossier est manquant.

remarque

Cette modularité s'applique uniquement aux fournisseurs LLM et TTS. La reconnaissance vocale (Runtime Speech Recognizer) et la synchronisation labiale (Runtime MetaHuman Lip Sync) font partie du projet de démonstration de base et sont toujours requises.

Dossier Modules et sa structure

attention

Au premier lancement, Unreal peut demander s'il faut désactiver les plugins optionnels manquants – cliquez sur Oui. Assurez-vous aussi d'avoir supprimé le dossier Content/Modules/ correspondant (voir ci-dessus).

Organisation du projet de démonstration

L'UI est à titre de démonstration

L'interface utilisateur ci-dessous est entièrement construite avec UMG (Unreal Motion Graphics) et sert uniquement à démontrer le pipeline – reconnaissance vocale → LLM → TTS → synchronisation labiale. Vous êtes libre de la restyler ou de la remplacer pour l'adapter au design visuel de votre jeu, à votre schéma de contrôle ou à votre plateforme (VR/AR, mobile, console, etc.). Si certains widgets ne sont pas nécessaires dans votre cas d'utilisation, vous pouvez aussi simplement les masquer (par exemple en réglant leur visibilité sur Collapsed ou Hidden).

Vue annotée de l'écran principal du projet de démonstration

ZoneCe qui s'y trouve
CentreLe personnage MetaHuman.
Côté gaucheQuatre boutons de configuration (reconnaissance vocale, chatbot IA, synthèse vocale, animations), décrits en détail ci-dessous.
Centre en basUn bouton Démarrer l'enregistrement. Cliquez dessus pour lancer une conversation vocale : votre microphone est capturé, transcrit, envoyé au LLM, la réponse est synthétisée par TTS et lue avec synchronisation labiale, entièrement mains libres.
Droite au centreUn widget d'historique de conversation affichant l'échange complet entre vous et l'IA (messages utilisateur et assistant). Il inclut également un champ de saisie de texte pour taper des messages directement sans utiliser la reconnaissance vocale, pratique pour les tests, l'accessibilité ou lorsque aucun microphone n'est disponible.
astuce

Vous pouvez mélanger librement les deux modes de saisie dans la même session – prononcer certains messages, en taper d'autres.

Boutons de configuration

Les quatre boutons de configuration à gauche ouvrent des panneaux dédiés pour chaque partie du pipeline :

1. Configurer la reconnaissance vocale

Configurez comment la voix de l'utilisateur est capturée et transcrite :

  • Choisir la langue
  • Régler les paramètres de reconnaissance vocale (réglages du modèle Whisper)
  • Configurer l'AEC (annulation d'écho acoustique)
  • Configurer la VAD (détection d'activité vocale)

Écran de configuration de la reconnaissance vocale

2. Configurer le chatbot IA

Choisissez votre fournisseur de LLM et configurez-le :

  • Sélectionner le fournisseur (Runtime AI Chatbot Integrator ou Runtime Local LLM)
  • Pour les fournisseurs externes : jeton d'authentification, nom du modèle, etc.
  • Pour le LLM local : sélectionner un modèle GGUF, définir la taille du contexte et d'autres paramètres d'inférence. Vous pouvez également télécharger votre propre modèle GGUF en cours d'exécution directement depuis la démo (par ex. via une URL) et l'utiliser immédiatement sans recompiler le projet.
astuce

Le combobox du fournisseur n'affiche que les fournisseurs dont le dossier du module de plugin est présent dans Content/Modules/.

Configuration du chatbot IA - Runtime AI Chatbot Integrator (LLM externe)

Configuration du chatbot IA - Runtime Local LLM (GGUF local)

3. Configurer la synthèse vocale

Choisissez votre fournisseur TTS et configurez les voix/modèles :

  • Sélectionner le fournisseur (Runtime AI Chatbot Integrator pour OpenAI/ElevenLabs, ou Runtime Text To Speech pour Piper/Kokoro local)
  • Sélectionner la voix/modèle
  • Régler les paramètres spécifiques au fournisseur

Configuration TTS - Runtime AI Chatbot Integrator (TTS externe)

Configuration TTS - Runtime Local Text To Speech (Piper/Kokoro local)

4. Configurer les animations

Contrôlez les visuels de votre PNJ IA :

  • Choisir parmi 3 personnages MetaHuman pré-téléchargés (Aera, Ada, Orlando)
  • Sélectionner le modèle de synchronisation labiale (Standard ou Réaliste)
  • Sélectionner le type de modèle de synchronisation labiale – Très optimisé, Semi-optimisé ou Original (voir Type de modèle)
  • Ajuster la taille du bloc de traitement – contrôle la fréquence à laquelle l'inférence de synchronisation labiale est exécutée (voir Taille du bloc de traitement)
  • Sélectionner une animation d'inactivité à jouer sur le MetaHuman pendant la conversation

Écran de configuration des animations

Pré-configuration de la démo dans l'éditeur

Lorsque vous travaillez avec la version source, vous pouvez pré-remplir les valeurs par défaut directement dans l'éditeur afin de ne pas avoir à les saisir à chaque exécution :

Quoi
Paramètres généraux (modèle de synchronisation labiale, animation d'inactivité, classe de personnage, reconnaissance vocale, etc.)Content/LipSyncSTSGameInstance
Paramètres LLM externe / TTS externe (Runtime AI Chatbot Integrator)Content/Modules/RuntimeAIChatbotIntegrator/RuntimeAIChatbotIntegrator_Provider
Paramètres LLM local (Runtime Local LLM)Content/Modules/RuntimeLocalLLM/RuntimeLocalLLM_Provider
Paramètres TTS local (Runtime Text To Speech)Content/Modules/RuntimeTextToSpeech/RuntimeTextToSpeech_Provider

Notes multi-plateformes

Tous les plugins utilisés par la démo prennent en charge Windows, Mac, Linux, iOS, Android et les plateformes basées sur Android (y compris Meta Quest), de sorte que le projet de démonstration fonctionne également sur toutes ces plateformes.

Pour les appareils moins puissants (mobile, VR autonome), vous pouvez :

  • Utiliser le modèle de synchronisation labiale Standard au lieu du Réaliste – voir la Comparaison des modèles
  • Passer au type de modèle Très optimisé
  • Augmenter la taille du bloc de traitement pour réduire la charge CPU
  • Choisir des modèles LLM / TTS plus petits

Consultez Configuration spécifique à la plateforme pour les étapes de configuration supplémentaires sur Android, iOS, Mac et Linux.

Intégrer votre propre MetaHuman

Le projet de démonstration est livré avec trois personnages MetaHuman d'exemple (Aera, Ada, Orlando), mais vous pouvez importer votre propre MetaHuman et l'utiliser dans la démo.

📺 Tutoriel vidéo : Ajouter un personnage MetaHuman personnalisé au projet de démonstration

remarque

Le plugin Runtime MetaHuman Lip Sync lui-même prend en charge de nombreux autres systèmes de personnages au‑delà des MetaHumans (personnages basés sur ARKit, Daz Genesis 8/9, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe, etc. – consultez le Guide de configuration pour personnages personnalisés).

Remarques concernant le modèle de synchronisation labiale Standard

Si vous prévoyez d'utiliser le modèle Standard (plutôt que Réaliste) dans l'un ou l'autre projet de démonstration, vous devrez installer l'extension Standard Lip Sync Extension. Consultez Extension du modèle Standard pour les instructions d'installation.

Besoin d'aide ?

Si vous rencontrez un quelconque problème pour configurer ou exécuter les projets de démonstration, n'hésitez pas à nous contacter :

Join our Discord
online · support

Pour les demandes de développement personnalisé (par exemple, étendre la démo avec votre propre logique, l'adapter pour une plateforme ou un pipeline de personnage spécifique), contactez [email protected].