Augenanimations-Helfer
Zusätzlich zur Lippen-Synchronisation enthält das Plugin Runtime MetaHuman Lip Sync zwei optionale Hilfsfunktionen zum Animieren der MetaHuman-Augen:
- Auto Blink: ein Helfer, der natürliche, zufällige Augenblinzeln auf einem MetaHuman erzeugt
- Eyes Aim: ein Animation-Blueprint-Knoten, der die Augen eines MetaHumans auf eine Position im Weltraum blicken lässt
Diese Funktionen sind völlig unabhängig von der Lippen-Synchronisation und können einzeln, zusammen oder in Kombination mit den Lippen-Synchronisationsknoten verwendet werden. Sie sind als leichte, sofort einsetzbare Helfer gedacht, um lebensechtes Augenverhalten hinzuzufügen, ohne es manuell erstellen zu müssen.
Funktionsvorschauen
Video-Durchlauf
Vollständiger Durchlauf beider Helfer, einschließlich der Problemumgehung für das Legacy-Rig.
Wenn Ihre Pipeline für Gesichtsanimationen bereits Blinzeln und dynamischen Blick umfasst, können Sie diese Seite überspringen. Diese Hilfsfunktionen existieren für Fälle, in denen Sie lebensechtes Augenverhalten wünschen, ohne es selbst zu erstellen, beispielsweise wenn Ihre Animationssequenzen kein Blinzeln enthalten oder wenn Sie benötigen, dass die Augen einem sich bewegenden Ziel dynamisch folgen (etwas, das statische Animationssequenzen nicht leisten können). Sie können auch über bestehende Gesichtsanimationen gelegt werden, um fehlende Elemente zu ergänzen, etwa Blinzeln über einer Sequenz, die nur den Mund animiert.
Automatisches Blinzeln
Der Auto-Blink-Helfer erzeugt zufällige, natürlich wirkende Augenblinzler, indem er die CTRL_L_eye_blink- und CTRL_R_eye_blink-Kurven des MetaHuman Face Control Rigs steuert.
So funktioniert es
Jeden Frame rufen Sie Update MetaHuman Auto Blink aus dem Event Graph Ihres Face Animation Blueprints auf und übergeben die Delta-Zeit des Frames. Die Funktion:
- Verfolgt den Zustand pro Charakter (nächste Blinkzeit, aktuelle Offen-/Geschlossen-Phase usw.), abgelegt nach dem aufrufenden
AnimInstance - Gibt zwei Gleitkommawerte im Bereich 0..1 zurück, einen für das linke Auge und einen für das rechte Auge, die angeben, wie geschlossen jedes Auge aktuell ist
- Sie speichern diese Werte dann in Blueprint-Variablen und speisen sie in den Control Rig-Knoten im Animationsgraphen ein
Einrichtung
Zwei Schritte: Fügen Sie den Blink-Aufruf zu Ihrem Event Graph hinzu und speisen Sie dann die Werte in einen Control-Rig-Knoten im Anim Graph ein.
1. Ereignisgraph: Steuern Sie die Blinkwerte in jedem Frame
In Ihrem Face Animation Blueprint (z. B. Face_AnimBP oder Ihrer duplizierten/kopierten Version, siehe Einrichtungsanleitung), öffnen Sie den Event Graph und fügen Sie Folgendes zu Event Blueprint Update Animation hinzu:
- Rufen Sie
Update MetaHuman Auto Blinkauf - Verbinden Sie Delta Time X (vom Ereignis) mit Delta Seconds
- (Optional) Konfigurieren Sie die Config-Struktur. Die Standardwerte wirken bereits natürlich
- Heben Sie Left Blink Value und Right Blink Value zu Blueprint-Variablen hervor (z. B.
LeftBlinkValue,RightBlinkValue)

2. Anim-Graph: Werte in den Face Control Rig einspeisen
Im Anim Graph desselben Animation Blueprints:
- Platzieren Sie einen Control Rig-Knoten, der die Blink-Kurven steuert. Wo genau er platziert wird, hängt davon ab, ob Sie Auto Blink mit anderen Gesichtsanimationen (Lip Sync, benutzerdefinierte Sequenzen usw.) kombinieren:
- Keine andere Gesichtsanimation: Platzieren Sie den Control-Rig-Knoten direkt in der Hauptkette, vor
Output Pose. - Kombination mit Lippen-Synchronisation und/oder anderer Gesichtsanimation: Verbinden Sie diesen Control-Rig-Knoten stattdessen mit einem
Layered blend per bone-Knoten, anstatt ihn direkt in die Kette zu setzen – siehe den Tipp unten.
- Keine andere Gesichtsanimation: Platzieren Sie den Control-Rig-Knoten direkt in der Hauptkette, vor
- Legen Sie im Details-Panel des Knotens die Control-Rig-Klasse (Control-Rig-Asset-Referenz in UE 5.8+) auf Ihr MetaHuman-Gesichts-Control-Rig fest. Der Pfad ist typischerweise:
/All/Game/MetaHumans/Common/Face/Face_ControlBoard_CtrlRig- Ihr Projekt kann je nachdem, wie der MetaHuman importiert wurde, einen anderen Pfad haben.
- Im Details-Panel erweitern Sie den Abschnitt Input und aktivieren Use Pin für:
CTRL_L_eye_blinkCTRL_R_eye_blink
- Verbinden Sie Ihre Variable
LeftBlinkValuemitCTRL_L_eye_blink - Verbinden Sie Ihre Variable
RightBlinkValuemitCTRL_R_eye_blink

Wenn Sie dies nicht mit anderer Gesichtsanimation kombinieren, platzieren Sie den Control-Rig-Knoten nach den Lip-Sync-Blend-Knoten (und allen anderen Gesichtsanimationsknoten) in der Kette, damit die Blinkwerte nicht überschrieben werden. Wenn Sie dies doch mit Lip-Sync oder anderer Gesichtsanimation kombinieren, folgen Sie der Anleitung Kombinieren mit vorhandenen Animationen und verbinden Sie diesen Control-Rig-Knoten stattdessen mit dem Eingang Basis-Pose des Knotens Layered blend per bone. Der Layered-Blend-Knoten hält beide am Leben, anstatt dass einer den anderen einfach überschreibt.
Konfiguration
Der Knoten Update MetaHuman Auto Blink akzeptiert eine optionale Config-Struktur. Die Standardwerte wirken für die meisten Charaktere bereits natürlich; erweitern Sie den Bereich unten, wenn Sie das Verhalten anpassen möchten.
Konfigurationseigenschaften
Timing
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Mindestzeit zwischen Lidschlägen | 2,0 s | Mindestintervall zwischen Lidschlägen, während die Augen vollständig geöffnet sind. |
| Maximale Zeit zwischen Lidschlägen | 4,0 s | Maximales Intervall zwischen Lidschlägen. Das tatsächliche Intervall wird zufällig zwischen Minimum und Maximum gewählt. |
| Mindesthaltedauer bei geschlossenen Augen | 0,04 s | Mindestzeit, in der die Augen vollständig geschlossen bleiben. |
| Maximale Haltedauer bei geschlossenen Augen | 0,08 s | Maximale Zeit, in der die Augen vollständig geschlossen bleiben. |
Interpolation
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Schließ-Interpolationsgeschwindigkeit | 35.0 | Geschwindigkeit beim Schließen der Augen. Menschen schließen ihre Augen schneller, als sie sie öffnen, daher ist dieser Wert bewusst höher als die Öffnungsgeschwindigkeit. |
| Öffnungs-Interpolationsgeschwindigkeit | 18.0 | Geschwindigkeit beim Öffnen der Augen. |
| Schließ-Schwellenwert | 0.97 | Wert, bei dem der Lidschlag als „vollständig geschlossen“ gilt und die Haltephase beginnt. |
| Öffnungs-Schwellenwert | 0.02 | Wert, bei dem der Lidschlag als „vollständig geöffnet“ gilt und der nächste Lidschlag geplant wird. |
Sonstiges
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Unabhängige Augen | false | Wenn true, blinzeln das linke und das rechte Auge unabhängig voneinander mit unterschiedlicher zeitlicher Abstimmung. Wenn false (Standard), blinzeln beide Augen perfekt synchron. |
bEnabled (Funktions-Pin) | true | Wenn false, öffnen sich die Augen langsam wieder und das Blinzeln pausiert. Nützlich für Zwischensequenzen, Schlaf, Tod usw. |
Runtime-Steuerung
Sie können auch Reset Auto Blink State aufrufen, um den internen Zustand für eine bestimmte AnimInstance explizit zu löschen (z. B. beim Neuspawnen eines Charakters oder beim Wechseln von Filmzuständen).
Augen Zielen
Der Eyes-Aim-Helper ist ein Animation-Blueprint-Knoten (Runtime MetaHuman Eyes Aim), der die Augen der Figur einer Position im Weltraum folgen lässt, beispielsweise der Spielerkamera, einem anderen Actor oder einem beliebigen beweglichen Ziel. Er unterstützt Yaw/Pitch-Begrenzung, Glättung, Anti-Flip-Schutz, wenn das Ziel hinter den Kopf gelangt, sowie optionale Mikro-Sakkaden für zusätzlichen Realismus.
Auswahl eines Modus
Der Knoten unterstützt zwei Modi, die über das Dropdown-Menü Modus im Detailbereich des Knotens ausgewählt werden:
| Mode | Was es steuert | Wo es platziert wird |
|---|---|---|
| Kurven (Standard) | Die Eye-Look-Kurven des Gesichts-Control-Rigs (CTRL_expressions_eyeLook*) | Im Face Animation Blueprint (z. B. Face_AnimBP), vor dem Control-Rig-Knoten |
| Knochen | Die FACIAL_L_Eye- / FACIAL_R_Eye-Knochen direkt, unter Umgehung des Control Rigs | Im Face Post Process Animation Blueprint (z. B. Face_PostProcess_AnimBP), nach dem AnimNode_RigLogic-Knoten |
Curves-Modus ist die empfohlene Standardeinstellung. Er fügt sich sauber in andere kurvenbasierte Gesichtssysteme ein (Lip-Sync, Ausdrücke, ARKit-Blendshapes usw.), da die Werte über die normale Control-Rig-Auswertung kombiniert werden, anstatt um Knochentransformationen zu konkurrieren.
Bei einigen MetaHuman-Varianten (insbesondere älteren Rigs, einschließlich einiger über Quixel Bridge heruntergeladener) steuern die Blickkurven die Augen nicht tatsächlich. Das sichtbare Symptom ist, dass die Augen nach unten blicken und die Pupillen fast verborgen sind, wenn der Knoten im Kurvenmodus aktiv ist, unabhängig vom Zielort.
Wenn du dies siehst, wechsle in den Bones-Modus. Der Bones-Modus rotiert direkt die Augenknochen, sodass er bei jeder MetaHuman-Variante funktioniert, unabhängig davon, wie das Control Rig verdrahtet ist. Siehe den Bones-Tab in Setup unten.
Setup
- Kurvenmodus (Standard)
- Knochenmodus (Fallback)
Die Standardeinrichtung. Der Node befindet sich im standardmäßigen Face-Animation-Blueprint und steuert die Eye-Look-Kurven des Gesichts-Control-Rigs.
Zwei Schritte: Fügen Sie den Knoten zu Ihrem Animationsdiagramm hinzu und übergeben Sie ihm dann eine Zielposition aus dem Ereignisdiagramm.
1. Anim Graph: Fügen Sie den Knoten hinzu
In Ihrem Face Animation Blueprint-Animationsgraphen:
- Fügen Sie einen
Runtime MetaHuman Eyes Aim-Knoten hinzu - Lassen Sie Mode im Detailpanel auf Curves eingestellt
- Platzieren Sie ihn nach aller anderen Gesichtslogik, die in die Augen-Blick-Kurven schreiben kann (Lip Sync, benutzerdefinierte Animationen usw.), nach demselben Prinzip wie beim Auto Blink Control Rig-Knoten
- Verbinden Sie die vorhandene Pose mit Source Pose
- Verbinden Sie den Ausgang mit dem nächsten Knoten in Ihrer Kette (oder
Output Pose) - Erstellen Sie eine
Vector-Blueprint-Variable (z. B.TargetWorldLocation) und verbinden Sie sie mit dem Target World Location-Pin des Knotens. Sie aktualisieren diese Variable im nächsten Schritt aus dem Event Graph.

2. Ereignisgraph: Zielposition einspeisen
Der Target World Location-Pin erwartet einen FVector im Weltraum. Ein häufiger Fall ist, dass der MetaHuman auf die Spielerkamera blickt. In Event Blueprint Update Animation:
- Holen Sie sich den Player Camera Manager (Player Index 0)
- Prüfen Sie Is Valid
- Wenn gültig, rufen Sie Get Camera Location auf
- Speichern Sie es in der Blueprint-Variable
TargetWorldLocation

Um stattdessen einen beliebigen Actor (NPC, Objekt, Ort von Interesse) zu verfolgen, rufe die Position dieses Actors in jedem Frame ab und speichere sie in derselben Variable. Für einen festen Blickpunkt setze Target World Location einmal oder als Konstante im Details-Panel des Nodes.
Verwenden Sie dieses Setup, wenn der Curves-Modus-Ansatz für Ihre MetaHuman-Variante nicht funktioniert (siehe Warnung oben). Im Bones-Modus dreht der Node direkt die Augenknochen und muss nach der Auswertung des Control Rigs ausgeführt werden, was bedeutet, dass er in den Face Post Process Animation Blueprint gehört und nicht in den regulären Face AnimBP.
Drei Schritte: Suchen Sie den Post Process Anim BP, fügen Sie den Knoten nach RigLogic hinzu und speisen Sie ihn dann mit einer Zielposition aus dem Event Graph dieses Blueprints.
1. Suchen Sie das Face Post Process Anim BP
- Öffnen Sie das Face Skeletal Mesh-Asset Ihres MetaHumans (z. B.
Faceim Ordner Ihres MetaHumans) - Suchen Sie im Details-Panel des Assets das Feld Post Process Anim Blueprint
- Öffnen Sie dieses Asset, es ist normalerweise etwas wie
Face_PostProcess_AnimBPbenannt
2. Anim-Graph: Fügen Sie den Knoten nach RigLogic hinzu.
Im Anim Graph des Face Post Process Anim BP:
- Lokalisieren Sie den vorhandenen
AnimNode_RigLogic-Knoten (er wandelt die Gesichts-Control-Rig-Kurven in Bone-Transformationen um) - Fügen Sie einen
Runtime MetaHuman Eyes Aim-Knoten nachAnimNode_RigLogicund vorOutput Posehinzu - Setzen Sie im Details-Panel des Knotens den Modus auf Bones
- Verbinden Sie
AnimNode_RigLogicmit der Quellpose des Eyes-Aim-Knotens - Verbinden Sie die Ausgabe des Eyes-Aim-Knotens mit
Output Pose - Erstellen Sie eine
Vector-Blueprint-Variable (z. B.TargetWorldLocation) in diesem Post-Process-Anim-BP und verbinden Sie sie mit dem Ziel-Weltposition-Pin des Knotens

Die Standard-Knochenreferenzen (FACIAL_L_Eye und FACIAL_R_Eye) entsprechen dem standardmäßigen MetaHuman-Gesichtsskelett. Wenn Ihr Charakter ein angepasstes Skelett mit anderen Augenbones-Namen verwendet, überschreiben Sie diese im Details-Panel des Nodes unter der Kategorie Bones.
3. Ereignisgraph: Zielposition einspeisen
Da der Node im Post Process Anim BP lebt, muss die Ziellogik ebenfalls im Event Graph dieses Blueprints liegen, nicht in Face_AnimBP. Das Setup ist identisch zum Curves-Modus (Kameraposition abrufen, Position eines Actors abrufen oder eine Konstante verwenden), nur eben innerhalb von Face_PostProcess_AnimBP durchgeführt.

Jegliche unabhängige Logik (Lip Sync, automatisches Blinzeln usw.) kann im regulären Face AnimBP bleiben. Nur die Berechnung der Zielposition für Eyes Aim muss hierher verschoben werden. Der Face Control Rig treibt die Augenknochen zwangsweise in jedem Frame basierend auf seinen Kurven an. Wenn der Eyes Aim-Knoten im regulären Face AnimBP (vor dem Control Rig) laufen würde, würde das Control Rig die Knochenrotationen danach überschreiben. Der Post Process Anim BP läuft nachdem das Control Rig seine finalen Knochentransformationen erzeugt hat, daher ist er der richtige Ort, um finale Knochenrotationen anzuwenden, die „gewinnen" müssen.Warum benötigt der Bones-Modus das Post Process Anim BP?
Konfiguration
Alle Einstellungen werden im Details-Bereich des Knotens Runtime MetaHuman Eyes Aim verfügbar gemacht.
Zielen & Begrenzen
Ziel
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Mode | Kurven | Legt fest, wie die Augen gesteuert werden. Siehe Auswahl eines Modus. |
| Ziel-Weltposition | (0,0,0) | Punkt im Weltraum, den die Augen ansehen. Standardmäßig als Pin verfügbar. |
bEnabled | true | Wenn false, gleiten die Augen zurück nach vorne und ignorieren das Ziel. Standardmäßig als Pin verfügbar. |
Klemmen
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Max. Gierwinkel (Yaw) | 35° | Maximale horizontale (Gier-)Abweichung von der Vorwärtsrichtung des Kopfes. Begrenzt auf 0 bis 80. |
| Max. Nickwinkel (Pitch) | 25° | Maximale vertikale (Nick-)Abweichung von der Vorwärtsrichtung des Kopfes. Begrenzt auf 0 bis 80. |
| Anti-Flip hinter dem Kopf | true | Verhindert das Umklappen der Augen, wenn das Ziel hinter den Kopf gelangt. |
Glättung & Sakkaden
Glättung
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Interpolationsgeschwindigkeit | 12.0 | Glättungsgeschwindigkeit für Augenbewegungen. Höher = schneller, niedriger = träger. |
Sakkaden
Mikro-Sakkaden sind winzige, zufällige Blickbewegungen, die echte Augen ständig ausführen. Ihre Hinzufügung vermeidet den „toten Blick“ einer perfekt gleichmäßigen Verfolgung.
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Sakkaden aktivieren | true | Schaltet Mikro-Sakkaden ein/aus. |
| Sakkaden-Gier-Amplitude in Grad | 1,5° | Maximales horizontales Zittern pro Sakkade. Kleine Werte (1–2°) wirken natürlich; größere Werte wirken zuckend. |
| Sakkaden-Nick-Amplitude in Grad | 1,0° | Maximales vertikales Zittern pro Sakkade. Normalerweise etwas kleiner als die Gier-Amplitude. |
| Min. Sakkadenintervall | 0,6 s | Mindestzeit zwischen Sakkaden. |
| Max. Sakkadenintervall | 2,5 s | Maximale Zeit zwischen Sakkaden. Größere Werte wirken ruhiger, kleinere Werte wirken unruhig. |
Knochen (nur im Bones-Modus)
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Linkes Augenknochen | FACIAL_L_Eye | Name des linken Augenknochens. Entspricht dem standardmäßigen MetaHuman-Gesichtsskelett. |
| Rechtes Augenknochen | FACIAL_R_Eye | Name des rechten Augenknochens. Entspricht dem standardmäßigen MetaHuman-Gesichtsskelett. |
Kalibrierung (nur Kurvenmodus)
Diese Werte definieren, wie Kopfraumwinkel auf die Augen-Blick-Kurvenwerte des MetaHuman-Gesichts-CRs abgebildet werden. Die Standardwerte sind auf das Standard-MetaHuman-Gesichts-CR abgestimmt und müssen nur selten geändert werden.
| Eigenschaft | Standard | Beschreibung |
|---|---|---|
| Grad Yaw pro Einheitskurve | 30° | Winkel, der für Yaw-Blickkurven einem Kurvenwert von 1.0 entspricht. |
| Grad Pitch pro Einheitskurve | 25° | Winkel, der für Pitch-Blickkurven einem Kurvenwert von 1.0 entspricht. |
Kombination mit Lip Sync und anderen Animationen
Beide Helfer sind so konzipiert, dass sie mit den Lip-Sync-Knoten des Plugins und jeder benutzerdefinierten Gesichtsanimation, die Sie bereits haben, koexistieren können.
- Eyes Aim sollte nach dem Lippen-Sync und jeder benutzerdefinierten Gesichtsanimation in derselben Kette platziert werden, damit seine Blickwerte nicht nachgelagert überschrieben werden. Siehe Modus auswählen und Einrichtung oben.
- Auto Blink verwendet einen
Layered blend per bone-Knoten anstelle einer einfachen linearen Platzierung; siehe den Tipp Platzierung ist wichtig oben zum Verdrahten des Control-Rig-Knotens in seinen Base Pose-Eingang.
Detailliertes Ausführungs-Flussdiagramm ansehen (Kurven- vs. Knochenmodus)
Je nachdem, ob Ihr MetaHuman-Rig den empfohlenen Curves-Modus oder den Fallback-Bones-Modus verwendet, ändert sich die Platzierung Ihrer Ausführungslogik. Erweitern Sie das Diagramm unten, um die genaue Ausführungsreihenfolge für beide Pipelines zu sehen:
Auto Blink und Lip Sync befinden sich in beiden Modi weiterhin im regulären Face AnimBP.
Details zum Layering mit Körperanimationen finden Sie unter Kombinieren mit vorhandenen Animationen.
Anmerkungen & Einschränkungen
Diese Helfer sind MetaHuman-spezifisch. Sie verlassen sich auf die standardmäßigen MetaHuman-Gesichts-Control-Rig-Kurvennamen (CTRL_L_eye_blink, CTRL_R_eye_blink, CTRL_expressions_eyeLook*) und die standardmäßigen Augenknochen (FACIAL_L_Eye, FACIAL_R_Eye). Sie sind nicht für benutzerdefinierte Nicht-MetaHuman-Charaktere gedacht.
Brauchen Sie Hilfe?
Für individuelle Entwicklungsanfragen kontaktieren Sie bitte [email protected].