Mit Live Link können Sie Inhalte von MotionBuilder in Echtzeit in Unreal Engine streamen, um eine Vorschau Ihrer Inhalte in Unreal anzuzeigen, ohne sie exportieren und importieren zu müssen. Es gibt auch eine Vielzahl von Einstellungen für die Steuerung der IP-Adresse und das Casting der Sitzung.
Dieses Dokument bietet einen Überblick darüber, wie Sie eine Live Link-Sitzung zwischen MotionBuilder und Unreal Engine einrichten, sowie über die Einstellungen, die Ihnen zur Verfügung stehen.
Voraussetzungen
-
Sie haben Live Link gelesen und das Plugin Live Link aktiviert.
-
Sie haben einen Skelett-Mesh-Actor zur Verwendung in Unreal Engine und MotionBuilder. Wenn Sie keinen haben, können Sie ein Projekt mit dem Third Person Template erstellen und das Skelett-Mesh mit Export the SK_Mannequin nach FBX exportieren, um es dann in MotionBuilder zu importieren
-
Sie können optional Ihren Charakter in MotionBuilder Characterize (Charakerisieren), um das Control-Rig zu verwenden.
Einrichten von MotionBuilder
Befolgen Sie diese Schritte, um Unreal Live Link in MotionBuilder einzurichten und ein Live Link-Signal zu übertragen.
Plugin installieren
Sie müssen das Live Link-Plugin „MotionBuilder“ herunterladen und installieren. Um dies zu tun, verwenden Sie zunächst diesen Link: GitHub - ue4plugins/MobuLiveLink: Plugin für MotionBuilder, das Daten an Unreal Engine sendet.
Klicken Sie auf dieser Seite auf Releases.
Sie können nun die Plugin-Version wählen, die für die Version von MotionBuilder geeignet ist, die Sie derzeit verwenden. Laden Sie die Datei herunter und extrahieren Sie sie an einem geeigneten Speicherort.
Nun werden Sie den Plugin-Pfad zu MotionBuilder zuweisen. Klicken Sie in MotionBuilder in der Hauptmenüleiste auf Settings > Preferences, um das Fenster Preferences zu öffnen, und navigieren Sie zur Kategorie SDK. Klicken Sie auf Add und navigieren Sie dann zu dem Speicherort des extrahierten Ordners, der Ihr MotionBuilder-Plugin enthält. Starten Sie MotionBuilder danach neu.
Nach dem Neustart von MotionBuilder sollten Sie nun den Eintrag UE – LiveLink in der Kategorie Devices des Tabs Asset Browser** sehen.
Live Link übertragen
Achten Sie darauf, dass Ihre MotionBuilder-Szene den Charakter enthält, den Sie verwenden möchten, und ziehen Sie dann das Plugin UE – LiveLink in den Viewport.
Dadurch wird das Fenster Live Link Connection geöffnet, das Sie unter der Sektion Devices des Navigator finden.
Klicken Sie auf die Schaltfläche Subject Selector (…), vergrößern und wählen Sie den Root Bone ihres Charakters aus und klicken Sie dann auf Add. Sie müssen darauf achten, dass der ausgewählte Stamm-Bone auch mit dem (obersten) Stamm-Bone aus dem importierten Skeleton in Ihrem Projekt übereinstimmt.
Dadurch wird Ihr Charakter als Subject zum Streamen an Unreal Engine hinzugefügt. Sie können optional Stream Viewport Camera aktivieren. Dadurch wird der Kamera-Stream von MotionBuilder zu einem Live Link-Motiv für Unreal Engine, von der aus Sie ihn als Quelle zum Steuern der Editor-Kamera auswählen können.
Sie können Ihr Motiv optional umbenennen, indem Sie das Feld Subject Name bearbeiten. Dadurch wird es in der Live Link-Übertragung hervorgehoben.

Klicken Sie auf die Schaltfläche neben Online, um das Streamen des Inhalts zu aktivieren. Die Online-Statusschaltfläche ändert sich von rot (Offline) zu grün (Online). An diesem Punkt überträgt MotionBuilder nun ein Live Link-Signal.
Wenn MotionBuilder den Fokus verliert und zu einer Hintergrundanwendung wird, wird seine Performance begrenzt, was zu Stottern während der Streaming-Verarbeitung führen kann. Um dies zu verhindern, aktivieren Sie die Option Always refresh viewer im Menü System des Navigators.
Einrichtung von Unreal Engine
Folgen Sie diesen Schritten, um Unreal Engine mit Ihrer MotionBuilder Live Link-Übertragung zu verbinden und eine Vorschau der Verbindung auf einem Charakter anzuzeigen.
Einrichten der Verbindung
Öffnen Sie, während MotionBuilder im Hintergrund ausgeführt wird, Unreal Engine und wählen Sie Window > Live Link aus der Hauptmenüleiste aus. Dadurch wird das Fenster Live Link Connection Window geöffnet, das es Ihnen ermöglicht, sich mit der laufenden Instanz von MotionBuilder zu verbinden.
Klicken Sie auf die Schaltfläche + Source, und wählen Sie dann Ihr MotionBuilder-Übertragungssignal aus Message Bus Source aus.
Das Verbindungsfenster wird aktualisiert und zeigt den verbundenen Quell-Typ, die Motive und den Status an.
Auf der Seite Live Link Overview finden Sie weitere Informationen zu den Optionen, Rollen und Status-Indikatoren von Live Link.
Vorschau auf Live Link
Sie können nun die Vorschau der Live Link-Verbindung auf Ihrem Charakter anzeigen. Öffnen Sie das Skelett-Mesh-Asset Ihres Charakters aus dem Inhaltsbrowser.
Legen Sie im Tab Preview Scene Settings die folgende Eigenschaften fest:
- Preview Controller: Live Link Preview Controller
- Subject Name: Motivname von MotionBuilder
- Enable Camera Sync: Aktiviert
Ihr MotionBuilder-Motiv ist nun mit diesem Fenster verbunden und streamt Daten. Der MotionBuilder-Viewport streamt auch zu dieser Ansicht, wenn Enable Camera Sync und Stream Viewport Camera im MotionBuilder aktiviert sind.
Sie können alternativ Blueprint-Funktionen verwenden, um eine Verbindung herzustellen, anstatt sich manuell über das Live Link-Fenster zu verbinden. Anstatt eines Vorschau-Controllers können Sie auch eine Live-Link-Komponente verwenden, die an einen Actor angekoppelt ist, oder den Knoten Live Link Pose in einem Animationsblueprint.
Einstellungen für MotionBuilder
Das MotionBuilder Live Link-Plugin enthält verschiedene erweiterte Einstellungen zur Steuerung Ihres Live Link Casting-Verhaltens. Um auf diese Einstellungen zuzugreifen, klicken Sie im Fenster Live Link Connection auf den Tab Settings.
Verknüpfung mit anderen Computern
Standardmäßig funktioniert die Verwendung von Live Link zum Verbinden von MotionBuilder mit Unreal Engine, solange die Sitzung auf demselben Gerät ausgeführt wird. Wenn Sie sich in einem lokalen Netzwerk befinden, in dem mehrere Geräte verwendet werden, und Sie an ein anderes Gerät übertragen möchten, müssen Sie Unicast und Static Endpoints mit expliziten lokalen IPv4-Adressen festlegen.
Der Unicast Endpoint kann als ein Ende der Live Link-Brücke betrachtet werden, während Static Endpoints das andere Ende der Brücke sind. Zusammen bilden sie eine aktive Live Link-Verbindung.
Um einen Unicast Endpunkt einzurichten, kopieren Sie Ihre IPv4-Adresse in die Eigenschaft Unicast Endpoint. Um Ihre IPv4-Adresse zu erhalten, können Sie den Befehl „ipconfig“ in ein Windows-Eingabeaufforderungsfenster eingeben, um sie anzuzeigen und zu kopieren. Sie müssen auch eine Portnummer am Ende der Adresse angeben.
Der Port 6666 ist reserviert und kann nicht für MotionBuilder Unicast-Endpunkt verwendet werden.
Öffnen Sie in Unreal Engine auf dem anderen empfangenden PC das Fenster Project Settings, indem Sie auf Edit > Project Settings klicken und zum Panel UDP Messaging navigieren. Erweitern Sie in der Kategorie Transport die erweiterten Details und geben Sie die gleiche Adresse und den gleichen Port vom Unicast Endpoint des Host-Rechners in der Eigenschaft Static Endpoints ein.
Sie sollten nun in der Lage sein, die Remote Live Link-Quelle zu empfangen, wenn Sie die Quelle zum Live-Link-Verbindungsfenster hinzufügen.
Die Umkehrung dieses Vorgangs funktioniert ebenfalls. Sie können stattdessen einen Unicast Endpoint in der Projekt-Einstellung UDP Messaging festlegen und den statischen Endpunkt in MotionBuilder festlegen.

Übertragen von Satelliten
Anstatt eine einzelne MotionBuilder-Live-Link-Instanz gleichzeitig an mehrere Unreal Engine-Ziele zu übertragen, können Sie einen einzelnen Unreal Engine-Empfänger einrichten, um die Live Link-Quelle an andere Computer zu übertragen. Dies kann nützlich sein, wenn die Live Link-Quelle weit von allen Empfängern entfernt ist oder eine begrenzte Bandbreite hat.
Um dieses Verhalten zu aktivieren, wählen Sie zuerst Ihre Live Link-Quelle (Source) und Motiv (Subject) im Live Link-Verbindungsfenster aus und markieren Rebroadcast Subject.
Das zweite Kontrollkästchen, das mit „Rebroadcast Subject“ assoziiert ist, wird mit dem Live Link-Hub verwendet. Sie müssen beide Kontrollkästchen markieren, um „Rebroadcast Subject“ zu aktivieren.
Als Nächstes müssen Sie einen Unicast Endpoint in den UDP Messaging-Einstellungen auf dem Computer festlegen, der das erneute Übertragen durchführt.
Wenn Sie nun Live Link-Quellen von anderen Computern auswählen, können Sie die neu übertragene Quelle von einer Unreal Engine-Instanz auswählen.
Multicast
Multicast ist eine Internetspezifikation, über die der Client an der Netzwerkkommunikation teilnehmen kann. Multicast wird mit Klasse D-Adressen dargestellt, die sich von dem Standard-Klassenadressenraum unterscheiden, den Sie normalerweise in Endpunkt zu Endpunkt Kommunikation sehen. Die Multicast-Adressen reichen von 224.0.0.0 bis 239.255.255.255.
Clients können die Multicast-Gruppe abonnieren, die dem Tracker, Switch oder Betriebssystem mitteilt, dass sie an der Multicast-Nachricht an der angegebenen IP interessiert ist. Unreal Engine verwendet die Multicast-Gruppe 230.0.0.1 an Port 6666. Beim Start sendet Unreal Engine ein Signal an das Netzwerk, dass es der Multicast-Gruppe 230.0.0.1:6666 beitreten möchte. Jede Multicast-Nachricht, die mit der angegebenen IP und dem angegebenen Port empfangen wird, wird dann dem Inbound-Socket von Unreal Engine zur Verarbeitung durch die Engine zugewiesen.
Der Zweck der Multicast-Adresse ist es, andere Unreal Engine-Instanzen über die Präsenz anderer Unreal Engine-Instanzen im Netzwerk zu benachrichtigen. Dies geschieht mithilfe einer Entdeckungsnachricht, die auf den Multicast-Socket gesendet wird. Die Entdeckungsnachricht wird von den anderen Instanzen empfangen und in dieser Nachricht enthalten ist die spezifische IP-Adresse oder der Port, der für die direkte Kommunikation mit der Unreal Engine-Instanz verwendet werden kann. Die direkte Kommunikation findet dann über diesen bekannten Endpunkt (IP-Adresse und Port) statt und es findet keine weitere Kommunikation über die Multicast-Gruppe statt. Dies entspricht dem manuellen Hinzufügen des statischen Endpunkts. Der Multicast-Mechanismus aktiviert dies automatisch.
Normalerweise propagieren die meisten Router keine Multicast-Nachricht über das lokale Netzwerk (LAN) hinaus, es sei denn, sie sind dafür konfiguriert. In den meisten Fällen können Sie Unreal Engine-Instanzen nur im selben lokalen Netzwerk entdecken.
Live Link ist sich der Multicast-Kommunikation im Allgemeinen nicht bewusst, wenn sie stattfindet. Die gesamte Netzwerkkommunikation erfolgt über den Nachrichtenbus und über das UDP-Messaging. Live Link wird durch seine Interaktion mit dem Nachrichtenbus und durch das Senden seiner eigenen Entdeckungsnachricht des Nachrichtenbus-Framework auf den verfügbaren Endpunkt hingewiesen. Alle entdeckten Endpunkte werden Live Link als Empfänger zur Verfügung gestellt und Live Link sendet seine Entdeckungsnachricht an diese Empfänger.
Ändern des Multicast-Bereichs
Wenn Sie die Multicast-Bereichsgruppe ändern möchten, muss dies sowohl in den Projekt-Einstellungen für UDP Messaging als auch in der Datei Engine.ini des Live Link-Plugins geändert werden.
Sie können Multicast Endpoint in den Projekt-Einstellungen von UDP Messaging finden.
