Ajudantes de Animação Ocular
Além do lip sync, o plugin Runtime MetaHuman Lip Sync inclui dois utilitários auxiliais opcionais para animar os olhos do MetaHuman:
- Piscar Automaticamente: um auxiliar que produz piscadas de olhos naturais e aleatórias em um MetaHuman
- Mirar os Olhos: um nó de Animation Blueprint que faz os olhos de um MetaHuman olharem para um local no espaço do mundo
Estes recursos são completamente independentes da sincronização labial e podem ser usados sozinhos, juntos ou combinados com os nós de sincronização labial. Eles foram criados como auxiliares leves e de fácil integração para adicionar comportamento ocular realista sem precisar criá-lo manualmente.
Prévia dos Recursos
Demonstração em Vídeo
Guia completo de ambos os helpers, incluindo a solução alternativa para o rig legado.
Se o seu pipeline de animação facial já inclui piscadas e olhar dinâmico, você pode pular esta página. Esses auxiliares existem para casos em que você deseja um comportamento ocular realista sem precisar criá-lo manualmente, por exemplo, quando suas sequências de animação não incluem piscadas, ou quando você precisa que os olhos acompanhem dinamicamente um alvo em movimento (algo que sequências de animação estáticas não conseguem fazer). Eles também podem ser sobrepostos sobre animações faciais existentes para adicionar elementos ausentes, como piscadas sobre uma sequência que apenas anima a boca.
Piscar Automaticamente
O auxiliar Auto Blink produz piscadas de olhos aleatórias e de aparência natural ao acionar as curvas CTRL_L_eye_blink e CTRL_R_eye_blink do MetaHuman Face Control Rig.
Como Funciona
A cada quadro, você chama Update MetaHuman Auto Blink a partir do Event Graph do seu Face Animation Blueprint e passa o delta time do quadro. A função:
- Rastreia o estado por personagem (próximo tempo de piscada, fase atual de aberto/fechado, etc.) indexado pelo
AnimInstanceque o chama - Retorna dois valores float no intervalo 0..1, um para o olho esquerdo e um para o olho direito, representando o quão fechado cada olho está no momento
- Você então armazena esses valores em variáveis do Blueprint e os alimenta no nó do Control Rig no Anim Graph
Configuração
Duas etapas: adicione a chamada de piscada ao seu Event Graph e, em seguida, alimente os valores em um nó de Control Rig no Anim Graph.
1. Event Graph: acione os valores de piscada a cada quadro
No seu Face Animation Blueprint (ex.: Face_AnimBP ou sua versão duplicada/copiada, consulte o Guia de Configuração), abra o Event Graph e adicione o seguinte ao Event Blueprint Update Animation:
- Chame
Update MetaHuman Auto Blink - Conecte Delta Time X (do evento) a Delta Seconds
- (Opcional) Configure a struct Config. Os padrões já parecem naturais
- Promova Left Blink Value e Right Blink Value para variáveis de Blueprint (ex.:
LeftBlinkValue,RightBlinkValue)

2. Anim Graph: alimente os valores no Face Control Rig
No Anim Graph do mesmo Animation Blueprint:
- Coloque um nó de Control Rig que irá controlar as curvas de piscar. Onde exatamente ele vai depende de se você está combinando o Auto Blink com outras animações faciais (lip sync, sequências personalizadas, etc.):
- Nenhuma outra animação facial: coloque o nó do Control Rig diretamente na cadeia principal, antes de
Output Pose. - Combinação com lip sync e/ou outra animação facial: conecte este nó do Control Rig a um nó
Layered blend per boneem vez de colocá-lo diretamente na cadeia, veja a dica abaixo.
- Nenhuma outra animação facial: coloque o nó do Control Rig diretamente na cadeia principal, antes de
- No painel Details do nó, defina Control Rig Class (Control Rig Asset Reference no UE 5.8+) para o Control Rig facial do seu MetaHuman. O caminho é tipicamente:
/All/Game/MetaHumans/Common/Face/Face_ControlBoard_CtrlRig- Seu projeto pode ter um caminho diferente, dependendo de como o MetaHuman foi importado.
- No Details panel, expanda a seção Input e habilite Use Pin para:
CTRL_L_eye_blinkCTRL_R_eye_blink
- Conecte sua variável
LeftBlinkValueaoCTRL_L_eye_blink - Conecte sua variável
RightBlinkValueaoCTRL_R_eye_blink

Se você não estiver combinando com outra animação facial, coloque o nó do Control Rig depois dos nós de blend de lip sync (e de quaisquer outros nós de animação facial) na cadeia, para que os valores de piscar não sejam sobrescritos. Se você estiver combinando com lip sync ou outra animação facial, siga o guia Combinando com Animações Existentes e conecte este nó do Control Rig à entrada Base Pose do nó Layered blend per bone; o nó de blend em camadas mantém ambos ativos, em vez de um simplesmente sobrescrever o outro.
Configuração
O nó Update MetaHuman Auto Blink aceita uma struct Config opcional. Os padrões já parecem naturais para a maioria dos personagens; expanda abaixo se quiser ajustar o comportamento.
Propriedades de configuração
Timing
| Propriedade | Padrão | Descrição |
|---|---|---|
| Tempo Mínimo Entre Piscadas | 2,0 s | Intervalo mínimo entre piscadas enquanto os olhos estão totalmente abertos. |
| Tempo Máximo Entre Piscadas | 4,0 s | Intervalo máximo entre piscadas. O intervalo real é randomizado entre o mínimo e o máximo. |
| Tempo Mínimo de Olhos Fechados | 0,04 s | Tempo mínimo em que os olhos permanecem totalmente fechados. |
| Tempo Máximo de Olhos Fechados | 0,08 s | Tempo máximo em que os olhos permanecem totalmente fechados. |
Interpolação
| Propriedade | Padrão | Descrição |
|---|---|---|
| Velocidade de Interpolação ao Fechar | 35.0 | Velocidade ao fechar os olhos. Humanos fecham os olhos mais rápido do que os abrem, então este valor é intencionalmente maior que a velocidade de abertura. |
| Velocidade de Interpolação ao Abrir | 18.0 | Velocidade ao abrir os olhos. |
| Limiar de Fechamento | 0.97 | Valor no qual o piscar é considerado "totalmente fechado" e a fase de espera começa. |
| Limiar de Abertura | 0.02 | Valor no qual o piscar é considerado "totalmente aberto" e o próximo piscar é agendado. |
Misc
| Propriedade | Padrão | Descrição |
|---|---|---|
| Olhos Independentes | falso | Quando true, os olhos esquerdo e direito piscam de forma independente, com temporizações separadas. Quando false (padrão), ambos os olhos piscam em sincronia perfeita. |
bEnabled (pino de função) | true | Quando false, os olhos relaxam e voltam a abrir, e o piscar é pausado. Útil para cenas de corte, sono, morte, etc. |
Controle em Tempo Real
Você também pode chamar Reset Auto Blink State para limpar explicitamente o estado interno de um determinado AnimInstance (por exemplo, ao renascer um personagem ou alternar estados cinematográficos).
Olhos Mirando
O auxiliar Eyes Aim é um nó de Animation Blueprint (Runtime MetaHuman Eyes Aim) que faz os olhos do personagem rastrearem uma localização no espaço do mundo, por exemplo, a câmera do jogador, outro ator ou qualquer alvo em movimento. Ele suporta limitação de yaw/pitch, suavização, proteção contra inversão quando o alvo passa atrás da cabeça e micro-sacadas opcionais para maior realismo.
Escolhendo um Modo
O nó suporta dois modos, selecionados através do menu suspenso Mode no painel de Detalhes do nó:
| Mode | O que ele controla | Onde colocá-lo |
|---|---|---|
| Curvas (padrão) | As curvas de olhar dos olhos do Control Rig facial (CTRL_expressions_eyeLook*) | No Animation Blueprint facial (ex.: Face_AnimBP), antes do nó do Control Rig |
| Ossos | Os ossos FACIAL_L_Eye / FACIAL_R_Eye diretamente, ignorando o Control Rig | No Animation Blueprint de pós-processamento facial (ex.: Face_PostProcess_AnimBP), após o nó AnimNode_RigLogic |
Modo Curves é o padrão recomendado. Ele se combina de forma limpa com outros sistemas faciais baseados em curvas (lip sync, expressões, blendshapes ARKit, etc.), já que os valores são combinados por meio da avaliação normal do Control Rig, em vez de disputarem as transformações dos ossos.
Em algumas variantes de MetaHuman (notavelmente rigs mais antigos, incluindo alguns baixados via Quixel Bridge), as curvas de direção do olhar não acionam de fato os olhos. O sintoma visível é que os olhos olham para baixo, com as pupilas quase escondidas, quando o nó do modo Curves está ativo, independentemente da localização do alvo.
Se você vir isto, mude para o modo Bones. O modo Bones gira diretamente os ossos dos olhos, então ele funciona em todas as variantes de MetaHuman, independentemente de como o Control Rig está configurado. Consulte a guia Bones em Configuração abaixo.
Configuração
- Modo Curvas (padrão)
- Modo de Ossos (fallback)
A configuração padrão. O nó fica no Blueprint de Animação Facial padrão e controla as curvas de olhar do Control Rig facial.
Dois passos: adicione o nó ao seu Anim Graph e, em seguida, forneça a ele uma localização alvo a partir do Event Graph.
1. Anim Graph: adicione o nó
No seu Blueprint de Animação Facial's Anim Graph:
- Adicione um nó
Runtime MetaHuman Eyes Aim - Deixe Mode definido como Curves no painel de Detalhes
- Coloque-o depois de toda a outra lógica facial que possa escrever nas curvas de olhar (lip sync, animações personalizadas, etc.), mesmo princípio do nó Auto Blink Control Rig
- Conecte a pose existente a Source Pose
- Conecte a saída ao próximo nó da sua cadeia (ou
Output Pose) - Crie uma variável
Vectorno Blueprint (ex.:TargetWorldLocation) e conecte-a ao pino Target World Location do nó. Você atualizará essa variável a partir do Event Graph na próxima etapa.

2. Event Graph: forneça um local de destino
O pino Target World Location espera um FVector em espaço mundial. Um caso comum é fazer o MetaHuman olhar para a câmera do jogador. Em Event Blueprint Update Animation:
- Obtenha o Player Camera Manager (Player Index 0)
- Verifique se Is Valid
- Se for válido, chame Get Camera Location
- Armazene-o na variável Blueprint
TargetWorldLocation

Para rastrear um ator arbitrário (NPC, item, ponto de interesse) em vez disso, obtenha a localização desse ator a cada quadro e armazene-a na mesma variável. Para um ponto de gaze fixo, defina Target World Location uma vez ou como uma constante no painel de Detalhes do nó.
Use esta configuração se a abordagem do modo Curves não funcionar para a sua variante de MetaHuman (veja o aviso acima). No modo Bones, o nó rotaciona diretamente os ossos dos olhos e deve ser executado após o Control Rig terminar a avaliação, o que significa que ele pertence ao Face Post Process Animation Blueprint em vez do Face AnimBP regular.
Três etapas: localize o Post Process Anim BP, adicione o nó após o RigLogic e, em seguida, forneça a ele uma localização alvo do Event Graph desse blueprint.
1. Localize o Face Post Process Anim BP
- Abra o asset Skeletal Mesh do rosto do seu MetaHuman (ex.:
Facena pasta do seu MetaHuman) - No painel Details do asset, encontre o campo Post Process Anim Blueprint
- Abra esse asset, que normalmente tem um nome como
Face_PostProcess_AnimBP
2. Anim Graph: adicione o nó após o RigLogic
No Anim Graph do Face Post Process Anim BP:
- Localize o nó
AnimNode_RigLogicexistente (ele converte as curvas do Control Rig do rosto em transformações de ossos) - Adicione um nó
Runtime MetaHuman Eyes Aimdepois deAnimNode_RigLogice antes deOutput Pose - No painel de Detalhes do nó, defina Mode como Bones
- Conecte
AnimNode_RigLogicao Source Pose do nó Eyes Aim - Conecte a saída do nó Eyes Aim a
Output Pose - Crie uma variável
Vectorno Blueprint (ex.:TargetWorldLocation) neste Post Process Anim BP e conecte-a ao pino Target World Location do nó

As referências de ossos padrão (FACIAL_L_Eye e FACIAL_R_Eye) correspondem ao esqueleto facial padrão do MetaHuman. Se o seu personagem usar um esqueleto personalizado com nomes de ossos oculares diferentes, substitua-os no painel de Detalhes do nó, na categoria Bones.
3. Event Graph: forneça um local de destino
Como o nó vive no Post Process Anim BP, a lógica de localização do alvo também deve viver no Event Graph deste blueprint, não no Face_AnimBP. A configuração é idêntica ao modo Curves (obter a localização da câmera, a localização de um ator ou usar uma constante), apenas realizada dentro do Face_PostProcess_AnimBP.

Qualquer lógica não relacionada (lip sync, piscar automático, etc.) pode permanecer no Face AnimBP regular. Apenas o cálculo da localização-alvo para Eyes Aim precisa ser movido para cá. O Face Control Rig força os ossos dos olhos a cada frame com base em suas curvas. Se o nó Eyes Aim rodasse no Face AnimBP regular (antes do Control Rig), o Control Rig sobrescreveria as rotações dos ossos depois. O Post Process Anim BP roda depois que o Control Rig produziu suas transformações finais dos ossos, então é o lugar correto para aplicar rotações finais dos ossos que precisam "vencer".Por que o modo Bones precisa do Post Process Anim BP?
Configuração
Todas as configurações estão expostas no painel Details do nó Runtime MetaHuman Eyes Aim.
Aim & Clamp
Objetivo
| Propriedade | Padrão | Descrição |
|---|---|---|
| Mode | Curvas | Seleciona como os olhos são direcionados. Consulte Escolhendo um Modo. |
| Localização Mundial do Alvo | (0,0,0) | Ponto no espaço mundial para onde os olhos olham. Exposto como um pino por padrão. |
bEnabled | true | Quando false, os olhos relaxam de volta para a frente e ignoram o alvo. Exposto como um pino por padrão. |
Restringir
| Propriedade | Padrão | Descrição |
|---|---|---|
| Graus Máximos de Yaw | 35° | Deflexão horizontal máxima (yaw) em relação à direção frontal da cabeça. Limitado de 0 a 80. |
| Graus Máximos de Pitch | 25° | Deflexão vertical máxima (pitch) em relação à direção frontal da cabeça. Limitado de 0 a 80. |
| Anti-Flip Atrás | true | Impede que os olhos virem quando o alvo passa atrás da cabeça. |
Suavização & Sacadas
Suavização
| Propriedade | Padrão | Descrição |
|---|---|---|
| Velocidade de Interpolação | 12.0 | Velocidade de suavização para o movimento dos olhos. Mais alto = mais rápido, mais baixo = mais lânguido. |
Sacadas
Micro-sacadas são pequenos deslocamentos aleatórios do olhar que os olhos reais realizam constantemente. Adicioná-las evita a aparência de "olhar morto" do rastreamento perfeitamente suave.
| Propriedade | Padrão | Descrição |
|---|---|---|
| Habilitar Sacadas | true | Ativa/desativa micro-sacadas. |
| Amplitude de Guinada da Sacada (Graus) | 1,5° | Jitter horizontal máximo por sacada. Valores pequenos (1–2°) parecem naturais; valores maiores parecem nervosos. |
| Amplitude de Arfagem da Sacada (Graus) | 1,0° | Jitter vertical máximo por sacada. Geralmente um pouco menor que a amplitude de guinada. |
| Intervalo Mínimo de Sacada | 0,6 s | Tempo mínimo entre sacadas. |
| Intervalo Máximo de Sacada | 2,5 s | Tempo máximo entre sacadas. Valores maiores parecem mais calmos; valores menores parecem inquietos. |
Ossos (somente no modo Bones)
| Propriedade | Padrão | Descrição |
|---|---|---|
| Osso do Olho Esquerdo | FACIAL_L_Eye | Nome do osso do olho esquerdo. Corresponde ao esqueleto facial padrão do MetaHuman. |
| Osso do Olho Direito | FACIAL_R_Eye | Nome do osso do olho direito. Corresponde ao esqueleto facial padrão do MetaHuman. |
Calibração (somente no modo Curvas)
Esses valores definem como os ângulos no espaço da cabeça são mapeados para os valores da curva de olhar do CR facial do MetaHuman. Os padrões são ajustados para o CR facial padrão do MetaHuman e raramente precisam ser alterados.
| Propriedade | Padrão | Descrição |
|---|---|---|
| Curva de Graus de Yaw por Unidade | 30° | Ângulo que mapeia para um valor de curva de 1,0 para curvas de olhar de yaw. |
| Curva de Graus de Pitch por Unidade | 25° | Ângulo que mapeia para um valor de curva de 1,0 para curvas de olhar de pitch. |
Combinando com Lip Sync e Outras Animações
Ambos os helpers foram projetados para coexistir com os nós de lip sync do plugin e com qualquer animação facial personalizada que você já tenha.
- Eyes Aim deve ser posicionado depois da sincronização labial e de qualquer animação facial personalizada na mesma cadeia, para que seus valores de direção do olhar não sejam sobrescritos posteriormente. Consulte Escolhendo um Modo e Configuração acima.
- Auto Blink usa um nó
Layered blend per boneem vez de uma colocação linear simples, consulte a dica A colocação importa acima para conectar o nó do Control Rig à sua entrada de Base Pose.
Veja o Fluxograma Detalhado de Execução (Modo Curvas vs. Modo Ossos)
Dependendo se o seu rig de MetaHuman usa o modo recomendado Curves Mode ou o modo alternativo Bones Mode, a posição da sua lógica de execução mudará. Expanda o gráfico abaixo para ver a ordem exata de execução para ambos os pipelines:
Auto Blink e lip sync ainda ficam no Face AnimBP regular em ambos os modos.
Para detalhes sobre camadas com animações corporais, consulte Combinação com Animações Existentes.
Notas e Limitações
Esses utilitários são específicos para MetaHuman. Eles dependem dos nomes padrão das curvas do Control Rig facial do MetaHuman (CTRL_L_eye_blink, CTRL_R_eye_blink, CTRL_expressions_eyeLook*) e dos ossos oculares padrão (FACIAL_L_Eye, FACIAL_R_Eye). Eles não são destinados a personagens personalizados que não sejam MetaHuman.
Precisa de Ajuda?
Para solicitações de desenvolvimento personalizado, entre em contato com [email protected].