Come utilizzare il plugin con personaggi personalizzati
Questa guida ti accompagna attraverso il processo di configurazione di Runtime MetaHuman Lip Sync per personaggi non MetaHuman. Questo processo richiede familiarità con i concetti di animazione e rigging. Se hai bisogno di assistenza nell'implementazione per il tuo personaggio specifico, puoi contattare per supporto professionale all'indirizzo [email protected].
Nota Importante sui Modelli di Lip Sync
I personaggi personalizzati sono supportati solo con il modello Standard (Più Veloce).
Il modello Realistic (Qualità Superiore) è progettato esclusivamente per personaggi MetaHuman e non può essere utilizzato con personaggi personalizzati. In tutta questa guida, dovresti seguire le istruzioni del modello Standard dalla guida di configurazione principale quando vengono richiamate.
Plugin di Estensione Richiesto: Per utilizzare il Modello Standard con personaggi personalizzati, devi installare il plugin di estensione Standard Lip Sync come descritto nella sezione Prerequisiti della guida di configurazione principale.
Questa estensione è richiesta per tutte le implementazioni di personaggi personalizzati descritte in questa guida.
Prerequisiti
Prima di iniziare, assicurati che il tuo personaggio soddisfi questi requisiti:
- Possiede uno scheletro valido
- Contiene morph target (blend shapes) per le espressioni facciali
- Idealmente possiede 10+ morph target che definiscono i visemi (più visemi = migliore qualità del lip sync)
Il plugin richiede di mappare i morph target del tuo personaggio ai seguenti visemi standard:
Sil -> Silence
PP -> Bilabial plosives (p, b, m)
FF -> Labiodental fricatives (f, v)
TH -> Dental fricatives (th)
DD -> Alveolar plosives (t, d)
KK -> Velar plosives (k, g)
CH -> Postalveolar affricates (ch, j)
SS -> Sibilants (s, z)
NN -> Nasal (n)
RR -> Approximant (r)
AA -> Open vowel (aa)
E -> Mid vowel (e)
IH -> Close front vowel (ih)
OH -> Close-mid back vowel (oh)
OU -> Close back vowel (ou)
Nota: Se il tuo personaggio ha un set diverso di visemi (cosa probabile), non hai bisogno di corrispondenze esatte per ogni visema. Le approssimazioni sono spesso sufficienti - ad esempio, mappare il visema SH
del tuo personaggio al visema CH
del plugin funzionerebbe efficacemente poiché sono suoni postalveolari strettamente correlati.
Riferimento per la mappatura dei visemi
Ecco le mappature tra i sistemi di visemi comuni e i visemi richiesti dal plugin:
- Apple ARKit
- Sistemi basati su FACS
- Sistema Preston Blair
- Sistema Fonemi 3ds Max
- Personaggi Personalizzati (Daz Genesis 8/9, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe)
ARKit fornisce un set completo di blendshape per l'animazione facciale, inclusi diverse forme della bocca. Ecco come mapparli ai visemi di RuntimeMetaHumanLipSync:
Visema RuntimeMetaHumanLipSync | Equivalente ARKit | Note |
---|---|---|
Sil | mouthClose | La posizione neutra/riposo |
PP | mouthPressLeft + mouthPressRight | Per i suoni bilabiali, usa entrambe le forme di press insieme |
FF | lowerLipBiteLeft + lowerLipBiteRight (o mouthRollLower) | Il labbro inferiore tocca i denti superiori, come nei suoni "f" e "v" |
TH | tongueOut | ARKit ha controllo diretto della lingua |
DD | jawOpen (leggero) + tongueUp (se hai un rig della lingua) | La lingua tocca la cresta alveolare; leggera apertura della mandibola |
KK | mouthLeft o mouthRight (leggero) | Una leggera trazione degli angoli della bocca approssima i suoni velari |
CH | jawOpen (leggero) + mouthFunnel (leggero) | Combina per i suoni postalveolari |
SS | mouthFrown | Usa una leggera smorfia per le sibilanti |
NN | jawOpen (molto leggero) + mouthClose | Bocca quasi chiusa con leggera apertura della mandibola |
RR | mouthPucker (leggero) | Leggero arrotondamento per i suoni di r |
AA | jawOpen + mouthStretchLeft + mouthStretchRight (o jawOpen + mouthOpen) | Bocca molto aperta per il suono "ah" |
E | jawOpen (leggero) + mouthSmile | Posizione mediamente aperta con leggero sorriso |
IH | mouthSmile (leggero) | Leggera distensione delle labbra |
OH | mouthFunnel | Forma arrotondata aperta |
OU | mouthPucker | Labbra strettamente arrotondate |
FACS (Facial Action Coding System) utilizza le Unità d'Azione (AUs) per descrivere i movimenti facciali. Molti sistemi di animazione professionale utilizzano approcci basati su FACS:
Visema RuntimeMetaHumanLipSync | Unità d'Azione FACS | Note |
---|---|---|
Sil | Neutrale | Nessuna AU attiva |
PP | AU23 + AU24 | Pressore labiale + serratore labiale |
FF | AU22 + AU28 | Imbutitore labiale + succhiatore labiale |
TH | AU25 (leggero) + AU27 | Labbra separate + allungatore della bocca |
DD | AU25 + AU16 | Labbra separate + depressore del labbro inferiore |
KK | AU26 + AU14 | Abbassatore della mandibola + corrugatore del mento |
CH | AU18 + AU25 | Increspatore labiale + labbra separate |
SS | AU20 | Stiratore labiale |
NN | AU25 (molto leggero) | Leggere labbra separate |
RR | AU18 (leggero) | Leggero increspamento labiale |
AA | AU27 + AU26 | Allungatore della bocca + abbassatore della mandibola |
E | AU25 + AU12 | Labbra separate + tiratore degli angoli delle labbra |
IH | AU12 + AU25 (leggero) | Tiratore degli angoli delle labbra + leggere labbra separate |
OH | AU27 (leggero) + AU18 | Leggero allungamento della bocca + increspamento labiale |
OU | AU18 + AU26 (leggero) | Increspamento labiale + leggero abbassamento della mandibola |
Il sistema Preston Blair è uno standard classico di animazione che utilizza nomi descrittivi per le forme della bocca:
RuntimeMetaHumanLipSync Viseme | Preston Blair | Note |
---|---|---|
Sil | Rest | Posizione neutra della bocca chiusa |
PP | MBP | La classica forma della bocca "MBP" |
FF | FV | La posizione "FV" con i denti sul labbro inferiore |
TH | TH | Lingua che tocca i denti anteriori |
DD | D/T/N | Posizione simile per queste consonanti |
KK | CKG | Posizione per consonanti dure |
CH | CH/J/SH | Leggero broncio per questi suoni |
SS | S/Z | Posizione dei denti leggermente aperta |
NN | N/NG/L | Simile a D/T ma con diversa posizione della lingua |
RR | R | Labbra arrotondate per il suono R |
AA | AI | Bocca spalancata |
E | EH | Bocca mediamente aperta |
IH | EE | Labbra distese |
OH | OH | Apertura media arrotondata |
OU | OO | Labbra strettamente arrotondate |
3ds Max utilizza un sistema basato sui fonemi per il suo character studio:
RuntimeMetaHumanLipSync Viseme | Fonema 3ds Max | Note |
---|---|---|
Sil | rest | Posizione predefinita della bocca |
PP | p_b_m | Equivalente diretto |
FF | f_v | Equivalente diretto |
TH | th | Equivalente diretto |
DD | t_d | Equivalente diretto |
KK | k_g | Equivalente diretto |
CH | sh_zh_ch | Forma combinata |
SS | s_z | Equivalente diretto |
NN | n_l | Combinato per questi suoni |
RR | r | Equivalente diretto |
AA | ah | Suono vocalico aperto |
E | eh | Vocale media |
IH | ee | Vocale anteriore chiusa |
OH | oh | Vocale posteriore arrotondata |
OU | oo | Vocale posteriore chiusa |
I personaggi personalizzati con visemi o morph target/forme di fusione per la bocca (Daz Genesis 8/9, Reallusion CC3/CC4, Mixamo, ReadyPlayerMe, ecc.) possono tipicamente essere mappati sul sistema di visemi del plugin con approssimazioni ragionevoli.
Creazione di un Pose Asset personalizzato
Segui questi passaggi per creare un Pose Asset personalizzato per il tuo personaggio che verrà utilizzato con il nodo Blend Runtime MetaHuman Lip Sync
:
1. Individua la Skeletal Mesh del tuo personaggio
Trova la skeletal mesh che contiene i morph target (blend shapes) che desideri utilizzare per l'animazione lip sync. Potrebbe trattarsi di una mesh per il corpo intero o solo per il viso, a seconda del design del tuo personaggio.
2. Verifica Morph Target e Curve
Prima di procedere, controlla che la tua skeletal mesh abbia morph target appropriati e curve corrispondenti per l'animazione lip sync.
Controlla i Morph Target:
Verifica che la tua skeletal mesh contenga morph target (blend shapes) che possano essere utilizzati come visemi per l'animazione lip sync. La maggior parte dei personaggi con supporto per l'animazione facciale dovrebbe avere alcuni morph target per fonemi/visemi.
Importante: Verifica la scheda Curve Questo passaggio è particolarmente cruciale per i personaggi esportati da Blender o altri software esterni:
- Apri la scheda Curve nell'editor Skeletal Mesh
- Controlla se riesci a vedere le curve corrispondenti ai tuoi morph target
- Se la scheda Curve è vuota ma esistono morph target, aggiungi manualmente nuove curve usando esattamente gli stessi nomi dei tuoi morph target
Nota: Questo problema si verifica comunemente con le esportazioni da Blender dove i morph target vengono importati con successo ma le curve di animazione non vengono create automaticamente. Senza curve corrispondenti, l'animazione non verrà popolata correttamente dopo il baking su Control Rig.
Soluzione alternativa: Per prevenire questo problema durante l'esportazione da Blender, prova ad abilitare Custom Properties e Animation nelle impostazioni di esportazione FBX, il che potrebbe aiutare a includere le curve di animazione insieme ai morph target.
3. Crea un'animazione di posa di riferimento
- Vai su
Crea Asset -> Crea Animazione -> Posa di Riferimento
- Inserisci un nome descrittivo per la sequenza di animazione e salvala in una posizione appropriata
- La sequenza di animazione creata si aprirà automaticamente, mostrando un'animazione vuota in riproduzione a ciclo continuo
- Clicca il pulsante
Pausa
per fermare la riproduzione dell'animazione per facilitare la modifica
4. Modifica la sequenza di animazione
- Clicca su
Modifica in Sequencer
->Modifica con FK Control Rig
- Nella finestra di dialogo
Bake to Control Rig
, clicca il pulsanteBake to Control Rig
senza cambiare alcuna impostazione
- L'editor passerà alla
Modalità Animazione
con la schedaSequencer
aperta - Imposta il
Fine Intervallo di Visualizzazione
a 0016 (che imposterà automaticamente ancheFine Intervallo di Lavoro
a 0016) - Trascina il bordo destro del cursore fino all'estremità destra della finestra del sequencer
5. Prepara le Curve di Animazione
- Torna all'asset Sequenza di Animazione e individua i morph target nella lista
Curves
(se non sono visibili, chiudi e riapri l'asset Sequenza di Animazione) - Rimuovi qualsiasi morph target che non sia correlato ai visemi o ai movimenti della bocca che desideri utilizzare per il Lip Sync
6. Pianifica il mapping dei visemi
Crea un piano di mapping per associare i visemi del tuo personaggio all'insieme richiesto dal plugin. Ad esempio:
Sil -> Sil
PP -> FV
FF -> FV
TH -> TH
DD -> TD
KK -> KG
CH -> CH
SS -> SZ
NN -> NL
RR -> RR
AA -> AA
E -> E
IH -> IH
OH -> O
OU -> U
Nota che è accettabile avere mappature ripetute quando il set di visemi del tuo personaggio non ha corrispondenze esatte per ogni visema richiesto.
7. Anima ogni visema
- Per ogni visema, anima le curve del morph target rilevanti da 0.0 a 1.0
- Inizia ogni animazione del visema su un fotogramma diverso
- Configura curve aggiuntive secondo necessità (apertura della mascella/bocca, posizione della lingua, ecc.) per creare forme di visemi dall'aspetto naturale
8. Crea un Pose Asset
- Vai su
Create Asset
->Pose Asset
->Current Animation
- Inserisci un nome descrittivo per il Pose Asset e salvalo in una posizione appropriata
- Il Pose Asset creato si aprirà automaticamente, mostrando pose come
Pose_0
,Pose_1
, ecc., ciascuna corrispondente a un visema - Anteprima i pesi dei visemi per assicurarti che funzionino come previsto
9. Finalizza il Pose Asset
- Rinomina ogni pose per far corrispondere i nomi dei visemi dalla sezione Prerequisiti
- Elimina tutte le pose inutilizzate
Configurazione della gestione audio e del blending
Una volta che il tuo Pose Asset è pronto, devi configurare i nodi di gestione audio e blending:
- Individua o crea l'Animation Blueprint del tuo personaggio
- Configura la gestione audio e il blending seguendo gli stessi passi documentati nella guida standard di configurazione del plugin
- Nel nodo
Blend Runtime MetaHuman Lip Sync
, seleziona il tuo Pose Asset personalizzato invece del Pose Asset predefinito di MetaHuman
Combinazione con animazioni del corpo
Se vuoi eseguire il lip sync insieme ad altre animazioni del corpo:
- Segui gli stessi passi documentati nella guida standard del plugin
- Assicurati di fornire i nomi corretti delle ossa per lo scheletro del collo del tuo personaggio invece di usare i nomi delle ossa di MetaHuman
Risultati
Ecco alcuni esempi di personaggi personalizzati che utilizzano questa configurazione:
La qualità del lip sync dipende in gran parte dal personaggio specifico e da quanto bene i suoi visemi sono configurati. Gli esempi sopra dimostrano il plugin al lavoro con diversi tipi di personaggi personalizzati con sistemi di visemi distinti.