Grâce à Live Link, vous pouvez charger du contenu MotionBuilder dans l'Unreal Engine en temps réel, afin de prévisualiser votre contenu dans Unreal sans recourir aux fonctions d'exportation et d'importation. Vous disposez également de divers paramètres vous permettant de contrôler l'adresse IP et la conversion de la session.
Dans ce document, nous vous expliquons brièvement comment configurer une session Live Link entre MotionBuilder et l'Unreal Engine, et comment utiliser les paramètres à votre disposition.
Conditions préalables
-
Vous avez consulté la page Live Link et activé le plug-in Live Link.
-
Vous disposez d'un acteur de maillage squelettique à utiliser dans l'Unreal Engine et MotionBuilder. Si vous ne disposez pas de cet acteur, vous pouvez créer un projet en utilisant le modèle à la troisième personne, puis en exportant le maillage squelettique SK_Mannequin vers FBX en vue d'une importation vers MotionBuilder.
-
Vous pouvez éventuellement caractériser votre personnage dans MotionBuilder afin d'utiliser le squelette de contrôle.
Configuration de MotionBuilder
Suivez ces étapes pour configurer Unreal Live Link dans MotionBuilder et commencer à diffuser un signal Live Link.
Installer le plug-in
Vous devrez télécharger et installer le plug-in Live Link MotionBuilder. Pour ce faire, utilisez d'abord ce lien : GitHub - ue4plugins/MobuLiveLink : Plug-in pour MotionBuilder qui envoie des données à l'Unreal Engine.
Sur cette page, cliquez sur *Versions** (Releases).
Vous pouvez alors choisir la version du plug-in adaptée à la version de Motionbuilder que vous utilisez actuellement. Téléchargez le fichier et extrayez-le à l'emplacement de votre choix.
Vous allez maintenant attribuer le chemin du plug-in à MotionBuilder. Dans MotionBuilder, cliquez Paramètres > Préférences (Settings > Preferences) dans la barre de menus principale pour ouvrir la fenêtre Préférences (Preferences) et accédez à la catégorie SDK. Cliquez sur Ajouter (Add), puis accédez à l'emplacement du dossier extrait contenant votre plug-in MotionBuilder. Redémarrez ensuite MotionBuilder.
Après avoir redémarré MotionBuilder, vous devriez voir l'entrée UE - LiveLink dans la catégorie Appareils (Devices) de l'onglet Navigateur de ressources (Asset Browser).
Diffuser Live Link
Assurez-vous que votre scène MotionBuilder contient les personnages que vous souhaitez utiliser, puis faites glisser le plug-in UE - LiveLink dans le hublot.
La fenêtre Connexion Live Link (Live Link Connection), qui se trouve sous la section Appareils (Devices) du navigateur, s'ouvre alors.
Cliquez sur le bouton Sélecteur de sujet (...) (Subject Selector (...)), développez et sélectionnez l'os racine (Root Bone) de votre personnage, puis cliquez sur Ajouter (Add). Vous devez vous assurer que l'os racine sélectionné correspond également à l'os racine (situé au sommet) du squelette importé dans votre projet.
Votre personnage est par ailleurs ajouté en tant que sujet en vue de le charger dynamiquement dans l'Unreal Engine. Vous pouvez éventuellement activer l'option Charger la caméra dans le hublot (Stream Viewport Camera). Grâce à cette option, la caméra de MotionBuilder est chargée dynamiquement en tant que sujet Live Link dans l'Unreal Engine afin que vous puissiez la sélectionner comme source pour piloter la caméra de l'éditeur.
Vous pouvez éventuellement renommer votre sujet en modifiant le champ Nom du sujet (Subject Name), de façon à pouvoir le distinguer lors de la diffusion Live Link.

Cliquez sur le bouton à côté de En ligne (Online) pour activer le chargement dynamique de contenu. Le bouton d'état En ligne (Online) passe du rouge (hors ligne) au vert (en ligne). À ce stade, MotionBuilder diffuse désormais un signal Live Link.
Lorsque l'application MotionBuilder passe en arrière-plan, ses performances sont limitées, ce qui peut entraîner un ralentissement des performances lors du chargement dynamique. Pour éviter cet écueil, activez l'option Toujours actualiser la visionneuse (Always refresh viewer), située dans le menu Système (System) du navigateur.
Configurer l'Unreal Engine
Procédez comme suit pour connecter l'Unreal Engine à votre diffusion Live Link MotionBuilder, afin de prévisualiser la connexion sur un personnage.
Configurer la connexion
Une fois MotionBuilder en arrière-plan, ouvrez l'Unreal Engine et sélectionnez Fenêtre > Live Link dans la barre de menus principale. La fenêtre de connexion Live Link, qui vous permet de vous connecter à l'instance de MotionBuilder en cours d'exécution, s'ouvre alors.
Cliquez sur le bouton + Source, puis sélectionnez votre signal de diffusion MotionBuilder à partir de la Source du bus de messages.
La fenêtre de connexion s'actualise pour afficher le type de source, les sujets et le statut associés.
Consultez la page Présentation de Live Link pour en savoir plus sur les options, les rôles et les indicateurs d'état Live Link.
Afficher un aperçu de Live Link
Vous pouvez désormais afficher un aperçu de la connexion Live Link sur votre personnage. Ouvrez la ressource Maillage squelettique de votre personnage à partir du navigateur de contenu.
Dans l'onglet Paramètres d'aperçu de la scène, définissez les propriétés suivantes :
- Contrôleur d'aperçu : contrôleur d'aperçu Live Link
- Nom du sujet : nom du sujet de MotionBuilder
- Activer la synchronisation de la caméra : Activé
Votre sujet MotionBuilder est désormais connecté à cette fenêtre et va charger dynamiquement des données. Le hublot MotionBuilder se charge aussi dynamiquement sur cette vue si vous avez activé les options Activer la synchronisation de la caméra (Enable Camera Sync) et Charger la caméra dans le hublot (Stream Viewport Camera) depuis MotionBuilder.
Vous pouvez également utiliser les fonctions Blueprint pour établir une connexion au lieu de vous connecter manuellement via la fenêtre Live Link. Au lieu d'utiliser un contrôleur d'aperçu, vous pouvez utiliser un composant Live Link relié à un acteur, ou le nœud Live Link Pose dans un blueprint d'animation.
Paramètres de MotionBuilder
Le plug-in MotionBuilder Live Link comprend divers paramètres avancés permettant de contrôler le comportement de conversion de votre plug-in Live Link. Pour accéder à ces paramètres, cliquez sur l'onglet Paramètres (Settings) dans la fenêtre Connexion Live Link (Live Link Connection).
Établir une liaison vers d'autres machines
Par défaut, l'utilisation de Live Link pour connecter MotionBuilder à l'Unreal Engine fonctionne à condition que la session s'exécute sur le même appareil. Si vous êtes connecté à un réseau local où plusieurs appareils sont utilisés et que vous souhaitez diffuser sur un appareil différent, vous devez utiliser le point de terminaison de monodiffusionet le point de terminaison statique en y définissant des adresses IPv4 locales explicites.
Le point de terminaison de monodiffusion peut être considéré comme une extrémité du pont Live Link, et les points de terminaison statiques l'autre extrémité du pont. Ensemble, ils forment une connexion Live Link active.
Pour configurer un point de terminaison de monodiffusion, copiez votre adresse IPv4 dans la propriété Point de terminaison de monodiffusion. Pour obtenir votre adresse IPv4, vous pouvez taper "ipconfig" dans une fenêtre d'invite de commande Windows en vue de l'afficher et la copier. Vous devez également spécifier un numéro de port à la fin de l'adresse.
Le port 6666 est réservé et ne peut être utilisé pour les points de terminaison de monodiffusion de Motion Builder.
Dans l'Unreal Engine, sur l'autre PC récepteur, ouvrez la fenêtre Paramètres du projet en cliquant sur Modifier > Paramètres du projet et accédez au panneau Messagerie UDP. Dans la catégorie Transport, développez les détails avancés et saisissez la même adresse et le même port que le point de terminaison de monodiffusion de la machine hôte dans la propriété Points de terminaison statiques.
Vous devriez maintenant pouvoir recevoir la source Live Link distante lorsque vous ajoutez des sources à la fenêtre de connexion Live Link.
L'inverse de ce processus fonctionne également. Vous pouvez ainsi définir un point de terminaison de monodiffusion dans les paramètres du projet Messagerie UDP et le point de terminaison statique dans MotionBuilder.

Satellites de diffusion
Plutôt que de définir une seule instance MotionBuilder Live Link diffusant vers plusieurs destinations Unreal Engine en même temps, vous pouvez configurer un seul récepteur Unreal Engine pour rediffuser la source Live Link vers d'autres machines. Cela peut être utile si la source Live Link est éloignée de tous les récepteurs ou dispose d'une bande passante limitée.
Pour activer ce comportement, commencez par sélectionner la source et le sujet Live Link dans la fenêtre de connexion Live Link (Live Link Connection Window) et activez Sujet de rediffusion (Rebroadcast Subject).
La deuxième case à cocher associée au sujet de rediffusion est utilisée avec le hub Live Link. Vous devez sélectionner les deux cases à cocher pour activer le sujet de rediffusion.
Vous devez ensuite définir un point de terminaison de monodiffusion dans les paramètres du projet Messagerie UDP sur la machine qui effectue la rediffusion.
Désormais, lorsque vous sélectionnez des sources Live Link à partir d'autres machines, vous pouvez choisir la source de rediffusion à partir d'une instance de l'Unreal Engine.
Multidiffusion
La multidiffusion est une spécification Internet grâce à laquelle le client peut participer à la communication réseau. La multidiffusion est représentée à l'aide d'adresses de classe D qui sont différentes de l'espace d'adressage de classe standard habituellement disponible dans les communications entre points de terminaison. Les adresses de multidiffusion sont comprises entre 224.0.0.0 et 239.255.255.255.
Les clients peuvent s'abonner au groupe de multidiffusion qui indique au routeur, au commutateur ou au système d'exploitation qu'il souhaite recevoir des messages de multidiffusion sur cette adresse IP spécifique. L'Unreal Engine utilise le groupe de multidiffusion 230.0.0.1 sur le port 6666. Au démarrage, l'Unreal Engine transmet un signal au réseau indiquant qu'il souhaite rejoindre le groupe de multidiffusion 230.0.0.1:6666. Tout message de multidiffusion reçu avec cette adresse IP et ce port spécifiés est alors attribué au connecteur entrant de cette instance de l'Unreal Engine en vue de son traitement par le moteur.
Le but de l'adresse de multidiffusion est de notifier aux autres instances de l'Unreal Engine la présence d'autres instances de l'Unreal Engine sur le réseau. Pour cela, un message de découverte est envoyé sur le connecteur de multidiffusion. Le message de découverte, où figure l'adresse IP ou le port spécifique pouvant servir à communiquer directement avec l'instance de l'Unreal Engine, est reçu par les autres instances. La communication directe est alors établie à l'aide de ce point de terminaison connu (adresse IP et port), et aucune autre communication n'a lieu sur le groupe de multidiffusion. Cela équivaut à ajouter manuellement le point de terminaison statique. Le mécanisme de multidiffusion active cette opération automatiquement.
En règle générale, la plupart des routeurs ne propagent pas de messages de multidiffusion au-delà du réseau local (LAN), à moins qu'ils ne soient configurés pour le faire. Dans la plupart des cas, vous ne pouvez découvrir les instances de l'Unreal Engine que sur le même réseau local.
Live Link n'est généralement pas au fait de la communication multidiffusion lorsqu'elle se produit. Toutes ces communications réseau se font via le bus de messages et à l'aide de la messagerie UDP. Live Link est informé des points de terminaison disponibles grâce à ses interactions avec le bus de messages et lors de l'envoi de son propre message de découverte via le framework du bus de messages. Tous les points de terminaison découverts sont mis à la disposition de Live Link en tant que récepteurs, et Live Link envoie son message de découverte à ces récepteurs.
Modifier la plage de multidiffusion
Si vous souhaitez modifier le groupe de plages de multidiffusion, vous devez le modifier à la fois dans les paramètres du projet Messagerie UDP et dans le fichier de Engine.ini du plug-in Live Link.
Vous pouvez localiser le point de terminaison de multidiffusion dans les paramètres du projet Messagerie UDP.
