Zum Hauptinhalt springen

Plugin-Konfiguration

Modellkonfiguration

Standardmodell-Konfiguration

Der Create Runtime Viseme Generator-Knoten verwendet Standardeinstellungen, die für die meisten Szenarien gut funktionieren. Die Konfiguration erfolgt über die Eigenschaften des Animation Blueprint-Blending-Knotens.

Für Animation Blueprint-Konfigurationsoptionen siehe den Abschnitt Lip Sync-Konfiguration unten.

Realistische Modellkonfiguration

Der Create Realistic MetaHuman Lip Sync Generator-Knoten akzeptiert einen optionalen Configuration-Parameter, der es Ihnen ermöglicht, das Verhalten des Generators anzupassen:

Modelltyp

Die Model Type-Einstellung bestimmt, welche Version des realistischen Modells verwendet wird:

ModelltypLeistungVisuelle QualitätRauschbehandlungEmpfohlene Anwendungsfälle
Hochoptimiert (Standard)Höchste Leistung, niedrigste CPU-AuslastungGute QualitätKann merkliche Mundbewegungen bei Hintergrundgeräuschen oder Nicht-Sprach-Geräuschen zeigenSaubere Audio-Umgebungen, leistungskritische Szenarien
TeiloptimiertGute Leistung, moderate CPU-AuslastungHohe QualitätBessere Stabilität bei verrauschtem AudioAusgewogene Leistung und Qualität, gemischte Audio-Bedingungen
OriginalGeeignet für Echtzeitanwendung auf modernen CPUsHöchste QualitätStabilste bei Hintergrundgeräuschen und Nicht-Sprach-GeräuschenHochwertige Produktionen, verrauschte Audio-Umgebungen, wenn maximale Genauigkeit benötigt wird

Leistungseinstellungen

Intra Op Threads: Steuert die Anzahl der Threads, die für interne Modellverarbeitungsoperationen verwendet werden.

  • 0 (Standard/Automatisch): Verwendet automatische Erkennung (typischerweise 1/4 der verfügbaren CPU-Kerne, Maximum 4)
  • 1-16: Thread-Anzahl manuell angeben. Höhere Werte können die Leistung auf Multi-Core-Systemen verbessern, verbrauchen aber mehr CPU

Inter Op Threads: Steuert die Anzahl der Threads, die für die parallele Ausführung verschiedener Modelloperationen verwendet werden.

  • 0 (Standard/Automatisch): Verwendet automatische Erkennung (typischerweise 1/8 der verfügbaren CPU-Kerne, Maximum 2)
  • 1-8: Thread-Anzahl manuell angeben. Wird normalerweise niedrig für die Echtzeitverarbeitung gehalten

Verarbeitungs-Chunk-Größe

Die Processing Chunk Size bestimmt, wie viele Samples in jedem Inferenzschritt verarbeitet werden. Der Standardwert ist 160 Samples (10ms Audio bei 16kHz):

  • Kleinere Werte bieten häufigere Updates, erhöhen aber die CPU-Auslastung
  • Größere Werte reduzieren die CPU-Last, können aber die Lip Sync-Reaktionsfähigkeit verringern
  • Empfohlen, Vielfache von 160 für optimale Ausrichtung zu verwenden

Setting Processing Chunk Size

Stimmungsfähige Modellkonfiguration

Der Create Realistic MetaHuman Lip Sync With Mood Generator-Knoten bietet zusätzliche Konfigurationsoptionen über das grundlegende realistische Modell hinaus:

Grundkonfiguration

Lookahead Ms: Lookahead-Zeit in Millisekunden für verbesserte Lip-Sync-Genauigkeit.

  • Standard: 80ms
  • Bereich: 20ms bis 200ms (muss durch 20 teilbar sein)
  • Höhere Werte bieten bessere Synchronisation, erhöhen aber die Latenz

Output Type: Steuert, welche Gesichtssteuerungen generiert werden.

  • Full Face: Alle 81 Gesichtssteuerungen (Augenbrauen, Augen, Nase, Mund, Kiefer, Zunge)
  • Mouth Only: Nur mund-, kiefer- und zungenbezogene Steuerungen

Performance Settings: Verwendet die gleichen Intra Op Threads und Inter Op Threads Einstellungen wie das reguläre realistische Modell.

Mood Settings

Verfügbare Stimmungen:

  • Neutral, Happy, Sad, Disgust, Anger, Surprise, Fear
  • Confident, Excited, Bored, Playful, Confused

Mood Intensity: Steuert, wie stark die Stimmung die Animation beeinflusst (0.0 bis 1.0)

Runtime Mood Control

Sie können die Stimmungseinstellungen während der Laufzeit mit den folgenden Funktionen anpassen:

  • Set Mood: Ändert den aktuellen Stimmungstyp
  • Set Mood Intensity: Passt an, wie stark die Stimmung die Animation beeinflusst (0.0 bis 1.0)
  • Set Lookahead Ms: Modifiziert die Lookahead-Zeit für die Synchronisation
  • Set Output Type: Wechselt zwischen Full Face und Mouth Only Steuerungen

Mood Configuration

Mood Selection Guide

Wählen Sie geeignete Stimmungen basierend auf Ihrem Inhalt:

StimmungAm besten geeignet fürTypischer Intensitätsbereich
NeutralAllgemeine Konversation, Erzählung, Standardzustand0.5 - 1.0
HappyPositive Inhalte, fröhliche Dialoge, Feierlichkeiten0.6 - 1.0
SadMelancholische Inhalte, emotionale Szenen, düstere Momente0.5 - 0.9
DisgustNegative Reaktionen, widerliche Inhalte, Ablehnung0.4 - 0.8
AngerAggressive Dialoge, konfrontative Szenen, Frustration0.6 - 1.0
SurpriseUnerwartete Ereignisse, Enthüllungen, Schockreaktionen0.7 - 1.0
FearBedrohliche Situationen, Angst, nervöse Dialoge0.5 - 0.9
ConfidentProfessionelle Präsentationen, Führungsdialoge, bestimmte Sprache0.7 - 1.0
ExcitedEnergetische Inhalte, Ankündigungen, enthusiastische Dialoge0.8 - 1.0
BoredMonotone Inhalte, desinteressierte Dialoge, müde Sprache0.3 - 0.7
PlayfulGelegentliche Konversation, Humor, unbeschwerte Interaktionen0.6 - 0.9
ConfusedFragenreiche Dialoge, Unsicherheit, Verwirrung0.4 - 0.8

Animation Blueprint Configuration

Lip Sync Configuration

Der Blend Runtime MetaHuman Lip Sync-Knoten hat Konfigurationsoptionen in seinem Eigenschaften-Bedienfeld:

EigenschaftStandardBeschreibung
Interpolationsgeschwindigkeit25Steuert, wie schnell die Lippenbewegungen zwischen Visemen übergehen. Höhere Werte führen zu schnelleren, abrupten Übergängen.
Zurücksetzzeit0.2Die Dauer in Sekunden, nach der die Lippen-Synchronisation zurückgesetzt wird. Dies ist nützlich, um zu verhindern, dass die Lippen-Synchronisation fortgesetzt wird, nachdem das Audio gestoppt hat.

Lachen-Animation

Sie können auch Lachen-Animationen hinzufügen, die dynamisch auf im Audio erkanntes Lachen reagieren:

  1. Fügen Sie den Blend Runtime MetaHuman Laughter-Knoten hinzu
  2. Verbinden Sie Ihre RuntimeVisemeGenerator-Variable mit dem Viseme Generator-Pin
  3. Wenn Sie bereits Lippen-Synchronisation verwenden:
    • Verbinden Sie die Ausgabe des Blend Runtime MetaHuman Lip Sync-Knotens mit der Source Pose des Blend Runtime MetaHuman Laughter-Knotens
    • Verbinden Sie die Ausgabe des Blend Runtime MetaHuman Laughter-Knotens mit dem Result-Pin der Output Pose
  4. Wenn Sie nur Lachen ohne Lippen-Synchronisation verwenden:
    • Verbinden Sie Ihre Quell-Pose direkt mit der Source Pose des Blend Runtime MetaHuman Laughter-Knotens
    • Verbinden Sie die Ausgabe mit dem Result-Pin

Blend Runtime MetaHuman Laughter

Wenn Lachen im Audio erkannt wird, animiert sich Ihre Figur entsprechend dynamisch:

Laughter

Lachen-Konfiguration

Der Blend Runtime MetaHuman Laughter-Knoten hat seine eigenen Konfigurationsoptionen:

EigenschaftStandardBeschreibung
Interpolationsgeschwindigkeit25Steuert, wie schnell die Lippenbewegungen zwischen Lachen-Animationen übergehen. Höhere Werte führen zu schnelleren, abrupten Übergängen.
Zurücksetzzeit0.2Die Dauer in Sekunden, nach der das Lachen zurückgesetzt wird. Dies ist nützlich, um zu verhindern, dass das Lachen fortgesetzt wird, nachdem das Audio gestoppt hat.
Maximale Lachen-Intensität0.7Skaliert die maximale Intensität der Lachen-Animation (0.0 - 1.0).
Hinweis: Die Lach-Erkennung ist derzeit nur mit dem Standard-Modell verfügbar.

Kombination mit bestehenden Animationen

Um Lippen-Synchronisation und Lachen zusammen mit bestehenden Körperanimationen und benutzerdefinierten Gesichtsanimationen anzuwenden, ohne diese zu überschreiben:

  1. Fügen Sie einen Layered blend per bone-Knoten zwischen Ihren Körperanimationen und der endgültigen Ausgabe hinzu. Stellen Sie sicher, dass Use Attached Parent auf true gesetzt ist.
  2. Konfigurieren Sie den Layer-Setup:
    • Fügen Sie 1 Item zum Layer Setup-Array hinzu
    • Fügen Sie 3 Items zu den Branch Filters für den Layer hinzu, mit den folgenden Bone Names:
      • FACIAL_C_FacialRoot
      • FACIAL_C_Neck2Root
      • FACIAL_C_Neck1Root
  3. Wichtig für benutzerdefinierte Gesichtsanimationen: Wählen Sie in der Curve Blend Option "Use Max Value". Dies ermöglicht es, benutzerdefinierte Gesichtsanimationen (Ausdrücke, Emotionen etc.) korrekt über der Lippen-Synchronisation zu schichten.
  4. Stellen Sie die Verbindungen her:
    • Bestehende Animationen (wie BodyPose) → Base Pose-Eingang
    • Gesichtsanimation-Ausgabe (von Lippen-Synchronisations- und/oder Lach-Knoten) → Blend Poses 0-Eingang
    • Layered blend-Knoten → Endgültige Result-Pose

Layered Blend Per Bone

Feinabstimmung des Lippen-Synchronisations-Verhaltens

Zungen-Protrusions-Kontrolle

Im Standard-Lippen-Synchronisations-Modell bemerken Sie möglicherweise eine übermäßige Vorwärtsbewegung der Zunge bei bestimmten Phonemen. Um die Zungen-Protrusion zu kontrollieren:

  1. Fügen Sie nach Ihrem Lippen-Synchronisations-Blend-Knoten einen Modify Curve-Knoten hinzu
  2. Klicken Sie mit der rechten Maustaste auf den Modify Curve-Knoten und wählen Sie Add Curve Pin
  3. Fügen Sie einen Curve Pin mit dem Namen CTRL_expressions_tongueOut hinzu
  4. Setzen Sie die Apply Mode-Eigenschaft des Knotens auf Scale
  5. Passen Sie den Value-Parameter an, um die Zungen-Ausdehnung zu steuern (z.B. 0.8, um die Protrusion um 20% zu reduzieren)

Kiefer-Öffnungs-Kontrolle

Die realistische Lippen-Synchronisation kann je nach Ihrem Audio-Inhalt und visuellen Anforderungen übermäßig reagierende Kieferbewegungen erzeugen. Um die Kiefer-Öffnungs-Intensität anzupassen:

  1. Fügen Sie nach Ihrem Lippen-Synchronisations-Blend-Knoten einen Modify Curve-Knoten hinzu
  2. Klicken Sie mit der rechten Maustaste auf den Modify Curve-Knoten und wählen Sie Add Curve Pin
  3. Fügen Sie einen Curve Pin mit dem Namen CTRL_expressions_jawOpen hinzu
  4. Setzen Sie die Apply Mode-Eigenschaft des Knotens auf Scale
  5. Passen Sie den Value-Parameter an, um den Kiefer-Öffnungs-Bereich zu steuern (z.B. 0.9, um die Kieferbewegung um 10% zu reduzieren)

Stimmungs-spezifische Feinabstimmung

Für modellaktivierte Stimmungen können Sie spezifische emotionale Ausdrücke feinabstimmen:

Augenbrauen-Kontrolle:

  • CTRL_L_brow_raiseIn.ty / CTRL_R_brow_raiseIn.ty - Innere Augenbrauen-Hebung
  • CTRL_L_brow_raiseOut.ty / CTRL_R_brow_raiseOut.ty - Äußere Augenbrauen-Hebung
  • CTRL_L_brow_down.ty / CTRL_R_brow_down.ty - Augenbrauen-Senkung

Augen-Ausdrucks-Kontrolle:

  • CTRL_L_eye_squintInner.ty / CTRL_R_eye_squintInner.ty - Augen-Zukneifen
  • CTRL_L_eye_cheekRaise.ty / CTRL_R_eye_cheekRaise.ty - Wangen-Hebung

Modellvergleich und -auswahl

Auswahl zwischen Modellen

Bei der Entscheidung, welches Lippenbewegungsmodell Sie für Ihr Projekt verwenden möchten, sollten Sie folgende Faktoren berücksichtigen:

ÜberlegungStandardmodellRealistisches ModellStimmungsfähiges Realistisches Modell
CharakterkompatibilitätMetaHumans und alle benutzerdefinierten CharaktertypenNur MetaHumansNur MetaHumans
Visuelle QualitätGute Lippenbewegung mit effizienter LeistungVerbesserter Realismus mit natürlicheren MundbewegungenVerbesserter Realismus mit emotionalen Ausdrücken
LeistungFür alle Plattformen optimiert, einschließlich Mobilgeräte/VRHöhere RessourcenanforderungenHöhere Ressourcenanforderungen
Funktionen14 Viseme, Lachen-Erkennung81 Gesichtssteuerungen, 3 Optimierungsstufen81 Gesichtssteuerungen, 12 Stimmungen, konfigurierbare Ausgabe
PlattformunterstützungWindows, Android, QuestWindows, Mac, iOS, LinuxWindows, Mac, iOS, Linux
AnwendungsfälleAllgemeine Anwendungen, Spiele, VR/AR, MobilgeräteFilmische Erfahrungen, Nahaufnahme-InteraktionenEmotionales Storytelling, erweiterte Charakterinteraktion

Engine-Version-Kompatibilität

UE 5.2-Kompatibilitätsproblem

Wenn Sie Unreal Engine 5.2 verwenden, funktionieren die Realistischen Modelle möglicherweise nicht korrekt aufgrund eines Fehlers in UEs Resampling-Bibliothek. Für UE 5.2-Benutzer, die eine zuverlässige Lippenbewegungsfunktionalität benötigen, verwenden Sie bitte stattdessen das Standardmodell.

Dieses Problem betrifft speziell UE 5.2 und betrifft keine anderen Engine-Versionen.

Leistungsempfehlungen

  • Für die meisten Projekte bietet das Standardmodell eine hervorragende Balance aus Qualität und Leistung
  • Verwenden Sie das Realistische Modell, wenn Sie die höchste visuelle Wiedergabetreue für MetaHuman-Charaktere benötigen
  • Verwenden Sie das Stimmungsfähige Realistische Modell, wenn die Kontrolle des emotionalen Ausdrucks für Ihre Anwendung wichtig ist
  • Berücksichtigen Sie die Leistungsfähigkeiten Ihrer Zielplattform bei der Auswahl zwischen den Modellen
  • Testen Sie verschiedene Optimierungsstufen, um die beste Balance für Ihren spezifischen Anwendungsfall zu finden

TTS-Kompatibilität

ModelltypLokale TTS-Unterstützung (über Runtime Text To Speech)Externe TTS-UnterstützungHinweise
Standardmodell✅ Vollständige Unterstützung✅ Vollständige UnterstützungKompatibel mit allen TTS-Optionen
Realistisches Modell❌ Eingeschränkte Unterstützung✅ Vollständige UnterstützungONNX Runtime-Konflikte mit lokaler TTS
Stimmungsfähiges Realistisches Modell✅ Vollständige Unterstützung✅ Vollständige UnterstützungKompatibel mit allen TTS-Optionen

Fehlerbehebung

Häufige Probleme

Generator-Neuerstellung für Realistische Modelle: Für einen zuverlässigen und konsistenten Betrieb mit den Realistischen Modellen wird empfohlen, den Generator jedes Mal neu zu erstellen, wenn Sie nach einer Phase der Inaktivität neue Audiodaten zuführen möchten. Dies liegt am Verhalten der ONNX Runtime, die dazu führen kann, dass die Lippenbewegung nicht mehr funktioniert, wenn Generatoren nach Phasen der Stille wiederverwendet werden. Lokale TTS-Kompatibilität: Die von der Runtime Text To Speech-Plugin bereitgestellte lokale TTS wird derzeit aufgrund von ONNX Runtime-Konflikten nicht mit dem regulären Realistic-Modell unterstützt. Sie ist jedoch vollständig mit sowohl dem Standard-Modell als auch dem mood-fähigen Realistic-Modell kompatibel. Verwenden Sie externe TTS-Dienste, wenn Sie speziell das reguläre Realistic-Modell mit TTS-Funktionalität benötigen.

Leistungsoptimierung:

  • Passen Sie die Verarbeitungs-Chunk-Größe für Realistic-Modelle basierend auf Ihren Leistungsanforderungen an
  • Verwenden Sie geeignete Thread-Anzahlen für Ihre Zielhardware
  • Erwägen Sie die Verwendung des Ausgabetyps "Mouth Only" für mood-fähige Modelle, wenn keine vollständige Gesichtsanimation benötigt wird