Live Link permet aux utilisateurs de charger dynamiquement différents types de données depuis diverses sources et de les appliquer directement aux acteurs présents dans leur niveau. Pour améliorer ces flux de travail, l'Unreal Engine utilise plusieurs fonctionnalités conçues pour simplifier le processus d'application des données Live Link aux acteurs de votre niveau.
Les préréglages Live Link permettent d'enregistrer vos paramètres sources pour une utilisation ultérieure.
Le composant de contrôleur LiveLink permet d'utiliser des contrôleurs LiveLink qui simplifient l'application des informations Live Link à vos acteurs ; de plus, plusieurs nœuds Blueprint ont été ajoutés pour faciliter la collecte de ces données.
Le composant d'animation squelettique Live Link expose le nœud d'événement OnLiveLinkUpdated, qui récupère des informations sur les sujets et les sources à chaque mise à jour de Live Link, et peut exécuter de nombreuses autres fonctions via Blueprint.
Pour en savoir plus sur l'activation de Live Link et la configuration des connexions, consultez la documentation du Plug-in Live Link.
Avant la version 4.23 de l'Unreal Engine, le composant d'animation squelettique LiveLink s'appelait Composant Live Link.
Préréglages Live Link
L'Unreal Engine obtient des données Live Link à partir de plusieurs sources créées dans la fenêtre de connexion Live Link. Une fois créées, ces sources peuvent être enregistrées en tant que préréglages et disponibles via des blueprints à l'aide du nœud Apply to Client.
Avec ce nœud, un préréglage Live Link peut se charger lorsque vous lancez votre application.
Vous pouvez également activer les préréglages Live Link via le bouton de préréglages disponible dans le panneau Live Link, ou en définissant le préréglage Live Link par défaut dans les paramètres du projet, sous la section Plug-ins - Live Link du menu. Il est aussi possible d'appliquer un préréglage via une ligne de commande avec 'LiveLink.Preset.Apply Preset=/Game/Folder/MyLiveLinkPreset.MyLiveLinkPreset'.
Composants Live Link
Composant d'animation squelettique Live Link
Lorsque vous ajoutez un composant d'animation squelettique Live Link à un blueprint d'acteur dans le panneau Composants, il n'est pas associé aux autres composants. Il est placé dans vos blueprints, ce qui vous donne accès à l'événement Sur mise à jour de Live Link.
L'événement Sur mise à jour de Live Link se déclenche à chaque mise à jour du composant, y compris dans l'éditeur.
Le nœud On Live Link Updated remplace l'événement de tick, mais il est également exécuté dans l'éditeur. Par exemple, si vous souhaitez injecter des données en temps réel dans l'éditeur, vous pourrez le faire à l'aide de ce nœud.
Composant du contrôleur Live Link
Le composant du contrôleur Live Link se trouve dans votre blueprint de personnage et permet d'utiliser des contrôleurs Live Link. Ceux-ci récupèrent automatiquement les données de votre sujet Live Link et les appliquent à un composant correspondant dans votre acteur.
Utilisation d'un contrôleur Live Link
Les contrôleurs Live Link offrent une méthode rapide pour envoyer des données Live Link à un acteur de votre scène. Chaque contrôleur consomme les données d'un sujet Live Link et les applique automatiquement à l'acteur de votre choix. Il existe trois types de contrôleurs définis par leur rôle :
Transform
Caméra
Lumière
Vous trouverez plus de détails ci-dessous sur les différents contrôleurs Live Link.
Transform
Le contrôleur de transformation capture et applique rapidement les données de transformation d'un sujet Live Link à un acteur de votre niveau.
Ce contrôleur fournit les options suivantes :
| Paramètre | Description |
|---|---|
Transformation du monde | Définit la transformation du composant dans l'espace du monde. Cette option est désactivée pour l'espace local. |
Utiliser l'échelle | Utilise les données d'échelle de Live Link. |
Balayage | Balaye le composant racine et détecte toute collision bloquante, en déclenchant des chevauchements et en arrêtant directement la cible en cas de blocage. |
Téléportation | Téléporte l'état physique (si la collision physique est activée).
|
Caméra
Le contrôleur de caméra applique les paramètres de caméra et les données de mouvement directement depuis un sujet Live Link doté du rôle de caméra vers un acteur de caméra présent dans votre niveau.
Vous pouvez animer les paramètres de caméra suivants :
Champ de vision (en degrés)
Proportions (largeur/hauteur)
Longueur focale
Ouverture de la caméra en termes d'ouverture du diaphragme
Distance de mise au point de la caméra en cm (fonctionne uniquement avec la mise au point manuelle)
Mode de projection de la caméra (perspective, orthographique, etc.)
Lumière
Le contrôleur de lumière applique les paramètres de lumière directement depuis un sujet Live Link doté du rôle de lumière vers un acteur de lumière présent dans votre niveau.
Vous pouvez animer les paramètres de lumière suivants :
Température chromatique (en degrés Kelvin)
Énergie totale (en lux)
Couleur de filtre
Angle du cône intérieur (en degrés pour un projecteur)
Angle du cône extérieur (en degrés pour un projecteur)
Influence visible de la lumière (lumière ponctuelle et projecteur)
Rayon souple pour la forme de la source de lumière (lumière ponctuelle et projecteur)
Longueur de la forme de la source de lumière (lumière ponctuelle et projecteur)
Vous pouvez ajouter d'autres contrôleurs ou en créer à l'aide de plug-ins externes. Pour en savoir plus sur les plug-ins externes, consultez notre documentation sur les Plug-ins.
Appliquer un contrôleur à un acteur
Pour appliquer un contrôleur Live Link, commencez par ajouter le composant Live Link à votre acteur :
Pour réaliser les étapes de la section ci-après, vous devez être connecté à une source Live Link. Pour en savoir plus sur la connexion à votre source, consultez la documentation sur le Plug-in Live Link.
Pour ajouter le composant depuis le panneau Détails, procédez comme suit :
Sélectionnez l'acteur dans votre niveau.
Dans le panneau Détails, cliquez sur le bouton + Ajouter un composant et recherchez le composant de contrôleur Live Link.
Une fois le composant ajouté, sélectionnez-le dans la liste des composants et ouvrez le menu déroulant Représentation du sujet. Dans la liste, sélectionnez le sujet que vous souhaitez utiliser comme source de données pour cet acteur. L'Unreal Engine sélectionne automatiquement le Composant de contrôleur en fonction de votre sélection. Le cas échéant, vous pouvez modifier ce comportement.
Une fois le contrôleur configuré, votre acteur commencera automatiquement à recevoir des données du sujet Live Link sélectionné.
Nœuds Blueprint courants
Les données Live Link sont accessibles via divers nœuds Blueprint.
Obtenir des sujets Live Link
Parfois, il vous sera nécessaire d'obtenir une liste de sujets à utiliser avec le nœud Evaluate Live Link image. Dans ce cas, vous pouvez utiliser l'option Obtenir des sujets Live Link :
Une matrice de sujets sera renvoyée et la fonction Évaluer l'image Live Link les considérera comme valides.
Évaluer l'image Live Link
Appeler la fonction Évaluer l'image Live Link permet d'obtenir les données Live Link associées au nom de sujet renseigné. Cette fonction vous fournit des broches d'exécution pour déterminer si l'image actuelle est valide ou non, ainsi que des données d'images et statiques, accessibles depuis la sortie Résultat de données. Ces données sont déterminées par le type de rôle choisi pour évaluer le sujet.
L'exemple ci-après illustre l'accès direct aux données depuis la broche de structure des données.
Utiliser les données de l'option Évaluer l'image Live Link
L'option Évaluer l'image Live Link permet d'utiliser plusieurs fonctions de blueprint pour évaluer les données fournies. Les données obtenues dépendent du rôle qui est évalué. Lors de l'évaluation du rôle d'animation, les éléments suivants apparaissent :
Get Basic Data
Get Curves
Get Metadata
Get Root Transform
Get Transform by Index
Get Transform by Name
Number of Transforms
Transform Names
Get Basic Data
Le nœud Get Basic Data renvoie la structure de base du sujet, stockée dans l'image du sujet actuel.
Get Curves
La fonction Get Curves permet d'obtenir toutes les formes de mélange ou les courbes animées. Elle renvoie un mappage du nom à la valeur pour chaque entrée.
Vous pouvez effectuer une recherche et saisir un nom pour récupérer la valeur d'une courbe (ou utiliser un opérateur booléen pour déterminer si elle a été détectée ou non).
Get Metadata
La fonction Get Metadata renvoie la structure de métadonnées de sujet stockée dans l'image du sujet ; vous pouvez alors la décomposer pour récupérer des informations :
Les métadonnées de chaîne forment un mappage vers des chaînes nommées sur le sujet. Vous pouvez par exemple transmettre le type d'un objet diffusé en tant que chaîne nommée. Ces métadonnées incluent également le timecode de la scène et la fréquence d'images de la scène, dont les structures décomposables vous permettent d'obtenir les informations requises.
| Sortie | Description |
|---|---|
Métadonnées de chaîne | Un mappage de chaînes nommées utilisé pour fournir des informations supplémentaires sur une image ou un sujet, par exemple "type" : "Caméra" |
Timecode de la scène | Valeur du timecode associée à l'image en cours Le caractère unique de cette valeur n'est pas garanti. Par exemple, si vous modifiez une seule image dans MotionBuilder, son timecode est envoyé pour plusieurs images. |
Fréquence d'images de la scène | Fréquence d'images correspondant au timecode de la scène |
Get Root Transform
La fonction Get Root Transform renvoie la transformation racine de l'image du sujet comme transformation Live Link (ou l'identité si aucune transformation n'est présente).
Au lieu d'une transformation standard, une transformation Live Link est renvoyée, car vous pouvez appeler des fonctions supplémentaires (decrites ci-dessous) :
| Fonction | Description |
|---|---|
Child Count | Renvoie le nombre d'enfants pour une transformation Live Link donnée. |
Component Space Transform | Renvoie la valeur d'une transformation Live Link donnée dans l'espace racine (par rapport à la racine de votre modèle). |
Get Children | Renvoie une matrice de transformations Live Link enfants pour une transformation Live Link donnée. |
Get Parent | Renvoie la transformation Live Link parente, si elle existe, ou une transformation d'identité si aucun parent n'existe. |
Has Parent | Indique si une transformation Live Link donnée a une transformation parente. |
Parent Bone Space Transform | Renvoie la valeur d'une transformation Live Link Transform donnée dans l'espace parent (la façon dont elle est stockée en interne et en fonction de l'os parent). |
Transform Name | Renvoie le nom d'une transformation Live Link donnée. |
Get Transform By Index
La fonction Get Transform By Index renvoie la transformation Live Link stockée dans une image de sujet vers un index spécifié (la fonction renvoie une transformation d'identité si l'index de transformation n'est pas valide).
Get Transform by Name
La fonction Get Transform by Name est semblable à Get Transform by Index, hormis le fait qu'elle utilise les données de nom de transformation.
Number of Transforms
La fonction Number of Transforms renvoie le nombre de transformations dans l'image du sujet.
Par exemple, vous pouvez utiliser ce nœud avec le nœud Get Transform By Index pour parcourir chacune de vos transformations Live Link en boucle et les récupérer (tel qu'illustré ci-après) :
Get Transformation Names
La fonction Get Transform Names renvoie une matrice de noms pour toutes les transformations comprises dans une image.
Appliquer un préréglage Live Link à l'aide de blueprints
Habituellement, les blueprints sont associés à Live Link pour utiliser le nœud Apply to Client afin d'assigner un préréglage Live Link à un maillage squelettique pendant l'exécution :
Commencez par créer votre préréglage Live Link dans le panneau Live Link. Pour en savoir plus sur les préréglages, consultez notre documentation sur le
Plug-in Live Link .Dans le blueprint de personnage, créez une référence à votre préréglage en ajoutant une nouvelle variable et en définissant le type de variable sur Préréglage Live Link dans le panneau Détails.
Compilez votre blueprint et définissez la valeur par défaut de la nouvelle variable sur le préréglage Live Link enregistré.
Faites glisser votre variable dans votre blueprint et sélectionnez Obtenir dans le menu.
Faites glisser la variable et recherchez le nœud Apply to Client.
Connectez le nœud Event Begin Play au nœud Apply to Client.