Aller au contenu principal

Configuration spécifique à la plateforme

Ce guide couvre les exigences de configuration et les paramètres spécifiques à la plateforme pour le plugin Runtime MetaHuman Lip Sync.

Configuration Android / Meta Quest

Si vous ciblez les plateformes Android ou Meta Quest et rencontrez des erreurs de compilation avec ce plugin, vous devrez désactiver l'architecture Android x86_64 (x64) dans les paramètres de votre projet :

  1. Allez dans Édition > Paramètres du projet
  2. Naviguez vers Plateformes > Android
  3. Sous Plateformes - Android, section Build, trouvez Support x86_64 [aka x64] et assurez-vous qu'il est désactivé, comme illustré ci-dessous

Disable x64 Android Architecture

Cela est dû au fait que le plugin ne prend actuellement en charge que les architectures arm64-v8a et armeabi-v7a pour les plateformes Android / Meta Quest.

Crashes sur Android et iOS

Dans certains cas sur Android et iOS, des plantages peuvent survenir pendant l'exécution (par exemple lors des tests TestFlight). Cela est dû à un conflit entre les exigences d'allocation mémoire de la bibliothèque sous-jacente ONNX Runtime et les allocateurs par défaut d'Unreal Engine sur ces plateformes.

Pour résoudre ce problème, vous devez forcer l'allocateur ANSI dans le fichier Target.cs de votre projet :

Pour Unreal Engine 5.5 et versions antérieures :

  • Votre projet doit utiliser un moteur construit à partir des sources (pas un binaire pré-compilé)
  • Ajoutez la ligne suivante à votre fichier Target.cs :
GlobalDefinitions.Add("FORCE_ANSI_ALLOCATOR=1");

Pour Unreal Engine 5.6 et versions ultérieures :

  • Fonctionne avec les builds de moteur compilés à partir des sources et pré-compilés
  • Ajoutez les deux lignes suivantes à votre fichier Target.cs :
bOverrideBuildEnvironment = true;
StaticAllocator = StaticAllocatorType.Ansi;

Cela force Unreal Engine à utiliser l'allocateur ANSI sur Android et iOS, correspondant à l'allocateur utilisé par ONNX Runtime.

Configuration Mac / Linux (UE 5.6+)

Conflit de plugin NNERuntimeORT

Si vous utilisez Unreal Engine 5.6 ou version ultérieure sur les plateformes Mac ou Linux et prévoyez d'utiliser les Realistic Lip Sync Models, vous rencontrerez un conflit de plugin qui empêche les modèles réalistes de fonctionner correctement.

Le Problème

À partir de l'UE 5.6, le moteur inclut le plugin NNERuntimeORT, qui entre en conflit avec les modèles réalistes du plugin Runtime MetaHuman Lip Sync sur les plateformes Mac et Linux. Ce conflit empêche la fonctionnalité de synchronisation labiale réaliste de s'initialiser correctement.

Solution

Pour résoudre ce conflit, vous devez modifier le fichier de configuration du plugin :

  1. Accédez à votre dossier d'installation d'Unreal Engine
  2. Allez dans Engine/Plugins/Marketplace/
  3. Trouvez le dossier du plugin RuntimeMetaHumanLipSync
  4. Ouvrez le fichier RuntimeMetaHumanLipSync.uplugin dans un éditeur de texte
  5. Supprimez entièrement la section suivante :
,
"Plugins": [
{
"Name": "NNERuntimeORT",
"Enabled": true
}
]

Notes importantes

  • Cette modification n'affecte que les plateformes Mac et Linux. Les utilisateurs de Windows n'ont pas besoin d'effectuer ce changement.
  • Ce correctif n'est nécessaire que pour UE 5.6 et versions ultérieures. Les versions antérieures du moteur ne sont pas concernées.
  • Vous devrez peut-être répéter ce processus si vous mettez à jour le plugin, car les mises à jour restaureront le fichier de configuration d'origine.