Aller au contenu principal

Configuration spécifique à la plateforme

Ce guide couvre les exigences de configuration spécifiques à la plateforme et les configurations 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 Construction, trouvez Prise en charge de x86_64 [alias x64] et assurez-vous qu'elle est désactivée, comme illustré ci-dessous

Désactiver l'architecture Android x64

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.

Plantages Android et iOS

Dans certains cas sur Android et iOS, des plantages peuvent survenir pendant l'exécution (comme lors des tests TestFlight). Ceci est causé par les exigences d'allocation mémoire de la bibliothèque ONNX Runtime sous-jacente entrant en conflit avec 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 la ligne suivante à votre fichier Target.cs :
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 du Plugin NNERuntimeORT

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

Le Problème

À partir d'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 au dossier d'installation de votre 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 Windows n'ont pas besoin d'effectuer ce changement.
  • Ce correctif est uniquement requis pour UE 5.6 et versions ultérieures. Les versions antérieures du moteur ne sont pas affectées.
  • Vous devrez peut-être répéter cette procédure si vous mettez à jour le plugin, car les mises à jour restaureront le fichier de configuration d'origine.