Configuração do Plugin
Configuração do Modelo
Configuração Padrão do Modelo
O nó Create Runtime Viseme Generator usa configurações padrão que funcionam bem para a maioria dos cenários. A configuração é tratada através das propriedades do nó de blend da Animation Blueprint.
Para opções de configuração da Animation Blueprint, consulte a seção Configuração de Sincronização Labial abaixo.
Configuração do Modelo Realista
O nó Create Realistic MetaHuman Lip Sync Generator aceita um parâmetro opcional Configuration que permite personalizar o comportamento do gerador:
Tipo de Modelo
A configuração Model Type determina qual versão do modelo realista usar:
| Tipo de Modelo | Desempenho | Qualidade Visual | Tratamento de Ruído | Casos de Uso Recomendados |
|---|---|---|---|---|
| Altamente Otimizado (Padrão) | Maior desempenho, menor uso de CPU | Boa qualidade | Pode mostrar movimentos de boca perceptíveis com ruído de fundo ou sons não vocais | Ambientes de áudio limpos, cenários críticos de desempenho |
| Semi-Otimizado | Bom desempenho, uso moderado de CPU | Alta qualidade | Melhor estabilidade com áudio ruidoso | Desempenho e qualidade balanceados, condições de áudio mistas |
| Original | Adequado para uso em tempo real em CPUs modernas | Qualidade mais alta | Mais estável com ruído de fundo e sons não vocais | Produções de alta qualidade, ambientes de áudio ruidosos, quando máxima precisão é necessária |
Configurações de Desempenho
Intra Op Threads: Controla o número de threads usadas para operações de processamento interno do modelo.
- 0 (Padrão/Automático): Usa detecção automática (tipicamente 1/4 dos núcleos de CPU disponíveis, máximo 4)
- 1-16: Especifica manualmente a contagem de threads. Valores mais altos podem melhorar o desempenho em sistemas multi-core, mas usam mais CPU
Inter Op Threads: Controla o número de threads usadas para execução paralela de diferentes operações do modelo.
- 0 (Padrão/Automático): Usa detecção automática (tipicamente 1/8 dos núcleos de CPU disponíveis, máximo 2)
- 1-8: Especifica manualmente a contagem de threads. Geralmente mantido baixo para processamento em tempo real
Tamanho do Chunk de Processamento
O Processing Chunk Size determina quantas amostras são processadas em cada etapa de inferência. O valor padrão é 160 amostras (10ms de áudio a 16kHz):
- Valores menores fornecem atualizações mais frequentes, mas aumentam o uso da CPU
- Valores maiores reduzem a carga da CPU, mas podem diminuir a responsividade da sincronização labial
- Recomendado usar múltiplos de 160 para um alinhamento ideal

Configuração do Modelo com Humor
O nó Create Realistic MetaHuman Lip Sync With Mood Generator fornece opções de configuração adicionais além do modelo realista básico:
Configuração Básica
Lookahead Ms: Tempo de antecipação em milissegundos para melhor precisão na sincronização labial.
- Padrão: 80ms
- Intervalo: 20ms a 200ms (deve ser divisível por 20)
- Valores mais altos fornecem melhor sincronização, mas aumentam a latência
Tipo de Saída: Controla quais controles faciais são gerados.
- Rosto Completo: Todos os 81 controles faciais (sobrancelhas, olhos, nariz, boca, mandíbula, língua)
- Somente Boca: Apenas controles relacionados à boca, mandíbula e língua
Configurações de Desempenho: Utiliza as mesmas configurações de Intra Op Threads e Inter Op Threads do modelo realista regular.
Configurações de Humor
Humores Disponíveis:
- Neutro, Feliz, Triste, Nojo, Raiva, Surpresa, Medo
- Confiante, Animado, Entediado, Brincalhão, Confuso
Intensidade do Humor: Controla o quanto o humor afeta a animação (0.0 a 1.0)
Controle de Humor em Tempo de Execução
Você pode ajustar as configurações de humor durante a execução usando as seguintes funções:
- Definir Humor: Alterar o tipo de humor atual
- Definir Intensidade do Humor: Ajustar o quanto o humor afeta a animação (0.0 a 1.0)
- Definir Lookahead Ms: Modificar o tempo de antecipação para sincronização
- Definir Tipo de Saída: Alternar entre os controles de Rosto Completo e Somente Boca

Guia de Seleção de Humor
Escolha humores apropriados com base no seu conteúdo:
| Humor | Melhor Para | Intervalo de Intensidade Típico |
|---|---|---|
| Neutro | Conversa geral, narração, estado padrão | 0.5 - 1.0 |
| Feliz | Conteúdo positivo, diálogo alegre, celebrações | 0.6 - 1.0 |
| Triste | Conteúdo melancólico, cenas emocionais, momentos sombrios | 0.5 - 0.9 |
| Nojo | Reações negativas, conteúdo desagradável, rejeição | 0.4 - 0.8 |
| Raiva | Diálogo agressivo, cenas de confronto, frustração | 0.6 - 1.0 |
| Surpresa | Eventos inesperados, revelações, reações de choque | 0.7 - 1.0 |
| Medo | Situações ameaçadoras, ansiedade, diálogo nervoso | 0.5 - 0.9 |
| Confiante | Apresentações profissionais, diálogo de liderança, discurso assertivo | 0.7 - 1.0 |
| Animado | Conteúdo energético, anúncios, diálogo entusiástico | 0.8 - 1.0 |
| Entediado | Conteúdo monótono, diálogo desinteressado, fala cansada | 0.3 - 0.7 |
| Brincalhão | Conversa casual, humor, interações descontraídas | 0.6 - 0.9 |
| Confuso | Diálogo com muitas perguntas, incerteza, perplexidade | 0.4 - 0.8 |
Configuração do Blueprint de Animação
Configuração de Sincronização Labial
- Standard Model
- Realistic Models
O nó Blend Runtime MetaHuman Lip Sync possui opções de configuração em seu painel de propriedades:
| Propriedade | Padrão | Descrição |
|---|---|---|
| Velocidade de Interpolação | 25 | Controla a rapidez com que os movimentos labiais transitam entre os visemas. Valores mais altos resultam em transições mais rápidas e abruptas. |
| Tempo de Reset | 0.2 | A duração em segundos após a qual a sincronização labial é reiniciada. Isso é útil para evitar que a sincronização labial continue após o áudio ter parado. |
Animação de Riso
Você também pode adicionar animações de riso que responderão dinamicamente ao riso detectado no áudio:
- Adicione o nó
Blend Runtime MetaHuman Laughter - Conecte sua variável
RuntimeVisemeGeneratorao pinoViseme Generator - Se você já está usando sincronização labial:
- Conecte a saída do nó
Blend Runtime MetaHuman Lip SyncaoSource Posedo nóBlend Runtime MetaHuman Laughter - Conecte a saída do nó
Blend Runtime MetaHuman Laughterao pinoResultdoOutput Pose
- Conecte a saída do nó
- Se usar apenas riso sem sincronização labial:
- Conecte sua pose de origem diretamente ao
Source Posedo nóBlend Runtime MetaHuman Laughter - Conecte a saída ao pino
Result
- Conecte sua pose de origem diretamente ao

Quando o riso é detectado no áudio, seu personagem animará dinamicamente de acordo:

Configuração do Riso
O nó Blend Runtime MetaHuman Laughter possui suas próprias opções de configuração:
| Propriedade | Padrão | Descrição |
|---|---|---|
| Velocidade de Interpolação | 25 | Controla a rapidez com que os movimentos labiais transitam entre as animações de riso. Valores mais altos resultam em transições mais rápidas e abruptas. |
| Tempo de Reset | 0.2 | A duração em segundos após a qual o riso é reiniciado. Isso é útil para evitar que o riso continue após o áudio ter parado. |
| Peso Máximo do Riso | 0.7 | Escala a intensidade máxima da animação de riso (0.0 - 1.0). |
Nota: A detecção de riso está atualmente disponível apenas com o Modelo Standard.
O nó Blend Realistic MetaHuman Lip Sync possui opções de configuração em seu painel de propriedades:
| Propriedade | Padrão | Descrição |
|---|---|---|
| Velocidade de Interpolação | 30 | Controla a rapidez com que as expressões faciais transitam durante a fala ativa. Valores mais altos resultam em transições mais rápidas e abruptas. |
| Velocidade de Interpolação em Repouso | 15 | Controla a rapidez com que as expressões faciais retornam ao estado de repouso/neutro. Valores mais baixos criam retornos mais suaves e graduais para a pose de repouso. |
| Tempo de Reset | 0.2 | Duração em segundos após a qual a sincronização labial é reiniciada para o estado de repouso |
| . Útil para evitar que as expressões continuem após o áudio parar. | ||
| Preservar Estado de Inatividade | false | Quando ativado, preserva o último estado emocional durante períodos de inatividade em vez de redefinir para neutro. |
| Preservar Expressões Oculares | true | Controla se os controles faciais relacionados aos olhos são preservados durante o estado de inatividade. Só é efetivo quando Preservar Estado de Inatividade está ativado. |
| Preservar Expressões de Sobrancelha | true | Controla se os controles faciais relacionados às sobrancelhas são preservados durante o estado de inatividade. Só é efetivo quando Preservar Estado de Inatividade está ativado. |
| Preservar Formato da Boca | false | Controla se os controles de formato da boca (excluindo movimentos específicos de fala como língua e mandíbula) são preservados durante o estado de inatividade. Só é efetivo quando Preservar Estado de Inatividade está ativado. |
Preservação do Estado de Inatividade
O recurso Preservar Estado de Inatividade aborda como o modelo Realista lida com períodos de silêncio. Diferente do modelo Padrão que usa visemas discretos e consistentemente retorna a valores zero durante o silêncio, a rede neural do modelo Realista pode manter um posicionamento facial sutil que difere da pose de repouso padrão do MetaHuman.
Quando Ativar:
- Manter expressões emocionais entre segmentos de fala
- Preservar traços de personalidade do personagem
- Garantir continuidade visual em sequências cinemáticas
Opções de Controle Regional:
- Expressões Oculares: Preserva o apertar dos olhos, o alargar e o posicionamento das pálpebras
- Expressões de Sobrancelha: Mantém o posicionamento das sobrancelhas e da testa
- Formato da Boca: Mantém a curvatura geral da boca enquanto permite que os movimentos de fala (língua, mandíbula) sejam redefinidos
Combinando com Animações Existentes
Para aplicar sincronização labial e risada juntamente com animações corporais existentes e animações faciais personalizadas sem substituí-las:
- Adicione um nó
Layered blend per boneentre suas animações corporais e a saída final. Certifique-se de queUse Attached Parentseja verdadeiro. - Configure a configuração da camada:
- Adicione 1 item ao array
Layer Setup - Adicione 3 items ao
Branch Filterspara a camada, com os seguintesBone Names:FACIAL_C_FacialRootFACIAL_C_Neck2RootFACIAL_C_Neck1Root
- Adicione 1 item ao array
- Importante para animações faciais personalizadas: Em
Curve Blend Option, selecione "Use Max Value". Isso permite que animações faciais personalizadas (expressões, emoções, etc.) sejam adequadamente sobrepostas sobre a sincronização labial. - Faça as conexões:
- Animações existentes (como
BodyPose) → EntradaBase Pose - Saída de animação facial (dos nós de sincronização labial e/ou risada) → Entrada
Blend Poses 0 - Nó de mistura em camadas →
Resultpose final
- Animações existentes (como

Ajuste Fino do Comportamento da Sincronização Labial
Controle de Protrusão da Língua
No modelo padrão de sincronização labial, você pode notar movimento excessivo da língua para frente durante certos fonemas. Para controlar a protrusão da língua:
- Após o seu nó de blend de sincronização labial, adicione um nó
Modify Curve - Clique com o botão direito no nó
Modify Curvee selecione Add Curve Pin - Adicione um pino de curva com o nome
CTRL_expressions_tongueOut - Defina a propriedade Apply Mode do nó para Scale
- Ajuste o parâmetro Value para controlar a extensão da língua (por exemplo, 0.8 para reduzir a protrusão em 20%)
Controle de Abertura da Mandíbula
A sincronização labial realista pode produzir movimentos da mandíbula excessivamente responsivos, dependendo do seu conteúdo de áudio e requisitos visuais. Para ajustar a intensidade da abertura da mandíbula:
- Após o seu nó de blend de sincronização labial, adicione um nó
Modify Curve - Clique com o botão direito no nó
Modify Curvee selecione Add Curve Pin - Adicione um pino de curva com o nome
CTRL_expressions_jawOpen - Defina a propriedade Apply Mode do nó para Scale
- Ajuste o parâmetro Value para controlar a amplitude da abertura da mandíbula (por exemplo, 0.9 para reduzir o movimento da mandíbula em 10%)
Ajuste Fino Específico de Humor
Para modelos com habilitação de humor, você pode ajustar finamente expressões emocionais específicas:
Controle de Sobrancelhas:
CTRL_expressions_browRaiseInL/CTRL_expressions_browRaiseInR- Elevação da sobrancelha internaCTRL_expressions_browRaiseOuterL/CTRL_expressions_browRaiseOuterR- Elevação da sobrancelha externaCTRL_expressions_browDownL/CTRL_expressions_browDownR- Abaixamento da sobrancelha
Controle de Expressão dos Olhos:
CTRL_expressions_eyeSquintInnerL/CTRL_expressions_eyeSquintInnerR- Estrabismo dos olhosCTRL_expressions_eyeCheekRaiseL/CTRL_expressions_eyeCheekRaiseR- Elevação da bochecha
Comparação e Seleção de Modelos
Escolhendo Entre Modelos
Ao decidir qual modelo de sincronização labial usar para o seu projeto, considere estes fatores:
| Consideração | Modelo Padrão | Modelo Realista | Modelo Realista com Humor |
|---|---|---|---|
| Compatibilidade de Personagem | MetaHumans e todos os tipos de personagens personalizados | Apenas MetaHumans | Apenas MetaHumans |
| Qualidade Visual | Boa sincronização labial com desempenho eficiente | Realismo aprimorado com movimentos de boca mais naturais | Realismo aprimorado com expressões emocionais |
| Desempenho | Otimizado para todas as plataformas, incluindo mobile/VR | Requisitos de recursos mais altos | Requisitos de recursos mais altos |
| Recursos | 14 visemas, detecção de risada | 81 controles faciais, 3 níveis de otimização | 81 controles faciais, 12 humores, saída configurável |
| Suporte de Plataforma | Windows, Android, Quest | Windows, Mac, iOS, Linux | Windows, Mac, iOS, Linux |
| Casos de Uso | Aplicações gerais, jogos, VR/AR, mobile | Experiências cinematográficas, interações em close-up | Narrativa emocional, interação avançada de personagens |
Compatibilidade de Versão do Engine
Se você está usando Unreal Engine 5.2, os Modelos Realistas podem não funcionar corretamente devido a um bug na biblioteca de reamostragem da UE. Para usuários da UE 5.2 que precisam de funcionalidade de sincronização labial confiável, por favor, use o Modelo Padrão em seu lugar.
Este problema é específico para a UE 5.2 e não afeta outras versões do motor.
Recomendações de Desempenho
- Para a maioria dos projetos, o Modelo Padrão oferece um excelente equilíbrio entre qualidade e desempenho
- Use o Modelo Realista quando você precisa da mais alta fidelidade visual para personagens MetaHuman
- Use o Modelo Realista com Humor quando o controle de expressão emocional for importante para sua aplicação
- Considere as capacidades de desempenho da sua plataforma de destino ao escolher entre os modelos
- Teste diferentes níveis de otimização para encontrar o melhor equilíbrio para o seu caso de uso específico
Compatibilidade com TTS
| Tipo de Modelo | Suporte a TTS Local (via Runtime Text To Speech) | Suporte a TTS Externo | Observações |
|---|---|---|---|
| Modelo Padrão | ✅ Suporte total | ✅ Suporte total | Compatível com todas as opções de TTS |
| Modelo Realista | ❌ Suporte limitado | ✅ Suporte total | Conflitos de runtime ONNX com TTS local |
| Modelo Realista com Humor | ✅ Suporte total | ✅ Suporte total | Compatível com todas as opções de TTS |
Solução de Problemas
Problemas Comuns
Recriação do Gerador para Modelos Realistas: Para uma operação confiável e consistente com os Modelos Realistas, é recomendado recriar o gerador cada vez que você quiser alimentar novos dados de áudio após um período de inatividade. Isso se deve ao comportamento do runtime ONNX que pode fazer com que a sincronização labial pare de funcionar ao reutilizar geradores após períodos de silêncio.
Compatibilidade com TTS Local: O TTS local fornecido pelo plugin Runtime Text To Speech não é atualmente suportado com o modelo Realista regular devido a conflitos de runtime ONNX. No entanto, é totalmente compatível com o modelo Padrão e o modelo Realista com Humor. Use serviços de TTS externos se você precisar especificamente do modelo Realista regular com funcionalidade TTS.
Responsividade da Sincronização Labial Degradada: Se você perceber que a sincronização labial se torna menos responsiva ao longo do tempo ao usar Streaming Sound Wave ou Capturable Sound Wave, isso pode ser causado por acúmulo de memória. Por padrão, a memória é realocada cada vez que um novo áudio é anexado. Para evitar esse problema, chame a função ReleaseMemory periodicamente para liberar a memória acumulada, por exemplo, a cada 30 segundos mais ou menos.
Otimização de Desempenho:
- Ajuste o Tamanho do Bloco de Processamento para modelos Realistas com base nos seus requisitos de desempenho
- Use contagens de threads apropriadas para o seu hardware de destino
- Considere usar o tipo de saída Apenas Boca para modelos com humor quando a animação facial completa não for necessária