Eye Animation Helpers
Además de la sincronización de labios, el plugin Runtime MetaHuman Lip Sync incluye dos utilidades auxiliares opcionales para animar los ojos de MetaHuman:
- Auto Blink: un auxiliar que produce parpadeos oculares naturales y aleatorios en un MetaHuman
- Eyes Aim: un nodo de Animation Blueprint que hace que los ojos de un MetaHuman miren hacia una ubicación en el espacio del mundo
Estas características son completamente independientes de la sincronización de labios y se pueden usar por sí solas, juntas o combinadas con los nodos de sincronización de labios. Están diseñadas como auxiliares ligeros y fáciles de integrar para agregar un comportamiento ocular realista sin tener que crearlo manualmente.
Feature Previews
Si tu canalización de animación facial ya incluye parpadeos y mirada dinámica, puedes omitir esta página. Estos ayudantes existen para casos en los que deseas un comportamiento ocular realista sin tener que crearlo tú mismo, por ejemplo, cuando tus secuencias de animación no incluyen parpadeos, o cuando necesitas que los ojos sigan dinámicamente un objetivo en movimiento (algo que las secuencias de animación estáticas no pueden hacer). También se pueden superponer sobre animaciones faciales existentes para agregar piezas faltantes, como parpadeos sobre una secuencia que solo anima la boca.
Auto Blink
El ayudante Auto Blink produce parpadeos oculares aleatorios y de aspecto natural al controlar las curvas CTRL_L_eye_blink y CTRL_R_eye_blink del Control Rig de la Cara de MetaHuman.
Cómo Funciona
Cada fotograma, llamas a Update MetaHuman Auto Blink desde el Gráfico de Eventos de tu Blueprint de Animación Facial y le pasas el tiempo delta del fotograma. La función:
- Rastrea el estado por personaje (próximo tiempo de parpadeo, fase actual de abierto/cerrado, etc.) indexado por el
AnimInstanceque la llama - Devuelve dos valores flotantes en el rango 0..1, uno para el ojo izquierdo y otro para el derecho, que representan qué tan cerrado está cada ojo actualmente
- Luego almacenas estos valores en variables del Blueprint y los introduces en el nodo Control Rig en el Gráfico de Animación
Configuración
Dos pasos: agrega la llamada de parpadeo a tu Gráfico de Eventos, luego introduce los valores en un nodo Control Rig en el Gráfico de Animación.
1. Gráfico de Eventos: controla los valores de parpadeo cada fotograma
En tu Blueprint de Animación Facial (por ejemplo, Face_AnimBP o tu versión duplicada/copiada, consulta la Guía de Configuración), abre el Gráfico de Eventos y agrega lo siguiente a Event Blueprint Update Animation:
- Llama a
Update MetaHuman Auto Blink - Conecta Delta Time X (del evento) a Delta Seconds
- (Opcional) Configura el struct Config. Los valores predeterminados ya se ven naturales
- Promueve Left Blink Value y Right Blink Value a variables del Blueprint (por ejemplo,
LeftBlinkValue,RightBlinkValue)

2. Gráfico de Animación: introduce los valores en el Control Rig Facial
En el Gráfico de Animación del mismo Blueprint de Animación:
- Coloca un nodo Control Rig después de toda otra lógica facial que pueda escribir en las curvas de parpadeo ocular (por ejemplo, después de
Blend Runtime MetaHuman Lip Syncy cualquier capa de animación facial personalizada) - En el panel Detalles del nodo, establece Control Rig Class en tu Control Rig facial de MetaHuman. La ruta es típicamente:
/All/Game/MetaHumans/Common/Face/Face_ControlBoard_CtrlRig- Tu proyecto puede tener una ruta diferente dependiendo de cómo se importó el MetaHuman.
- En el panel Detalles, expande la sección Input y habilita Use Pin para:
CTRL_L_eye_blinkCTRL_R_eye_blink
- Conecta tu variable
LeftBlinkValueaCTRL_L_eye_blink - Conecta tu variable
RightBlinkValueaCTRL_R_eye_blink

Coloca el nodo Control Rig después de los nodos de mezcla de sincronización de labios (y cualquier otro nodo de animación facial) para que los valores de parpadeo no sean sobrescritos por otra lógica.
Configuración
El nodo Update MetaHuman Auto Blink acepta un struct Config opcional. Los valores predeterminados ya se ven naturales para la mayoría de los personajes; expande a continuación si deseas ajustar el comportamiento.
Propiedades de Config
Temporización
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Min Time Between Blinks | 2.0 s | Intervalo mínimo entre parpadeos mientras los ojos están completamente abiertos. |
| Max Time Between Blinks | 4.0 s | Intervalo máximo entre parpadeos. El intervalo real se aleatoriza entre el mínimo y el máximo. |
| Min Closed Hold Time | 0.04 s | Tiempo mínimo que los ojos permanecen completamente cerrados. |
| Max Closed Hold Time | 0.08 s | Tiempo máximo que los ojos permanecen completamente cerrados. |
Interpolación
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Close Interp Speed | 35.0 | Velocidad al cerrar los ojos. Los humanos cierran los ojos más rápido de lo que los abren, por lo que esto es intencionalmente más alto que la velocidad de apertura. |
| Open Interp Speed | 18.0 | Velocidad al abrir los ojos. |
| Closed Threshold | 0.97 | Valor en el que el parpadeo se considera "completamente cerrado" y comienza la fase de mantenimiento. |
| Open Threshold | 0.02 | Valor en el que el parpadeo se considera "completamente abierto" y se programa el siguiente parpadeo. |
Varios
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Independent Eyes | false | Cuando es true, el ojo izquierdo y el derecho parpadean de forma independiente con tiempos separados. Cuando es false (predeterminado), ambos ojos parpadean en perfecta sincronía. |
bEnabled (pin de función) | true | Cuando es false, los ojos se abren suavemente y el parpadeo se pausa. Útil para escenas cinemáticas, sueño, muerte, etc. |
Control en Tiempo de Ejecución
También puedes llamar a Reset Auto Blink State para limpiar explícitamente el estado interno de un AnimInstance dado (por ejemplo, al reaparición de un personaje o al cambiar de estado cinemático).
Eyes Aim
El ayudante Eyes Aim es un nodo de Blueprint de Animación (Runtime MetaHuman Eyes Aim) que hace que los ojos del personaje sigan una ubicación en el espacio del mundo, por ejemplo, la cámara del jugador, otro actor o cualquier objetivo en movimiento. Admite limitación de guiñada/cabeceo, suavizado, protección contra inversión cuando el objetivo pasa detrás de la cabeza y micro-sacadas opcionales para mayor realismo.
Elegir un Modo
El nodo admite dos modos, seleccionados a través del menú desplegable Mode en el panel Detalles del nodo:
| Modo | Qué controla | Dónde colocarlo |
|---|---|---|
| Curves (predeterminado) | Las curvas de mirada ocular del Control Rig facial (CTRL_expressions_eyeLook*) | En el Blueprint de Animación Facial (por ejemplo, Face_AnimBP), antes del nodo Control Rig |
| Bones | Los huesos FACIAL_L_Eye / FACIAL_R_Eye directamente, omitiendo el Control Rig | En el Blueprint de Animación de Postprocesamiento Facial (por ejemplo, Face_PostProcess_AnimBP), después del nodo AnimNode_RigLogic |
El modo Curves es el predeterminado recomendado. Se compone limpiamente con otros sistemas faciales basados en curvas (sincronización de labios, expresiones, blendshapes de ARKit, etc.), ya que los valores se combinan a través de la evaluación normal del Control Rig en lugar de competir por las transformaciones de los huesos.
En algunas variantes de MetaHuman (notablemente rigs más antiguos, incluidos algunos descargados a través de Quixel Bridge), las curvas de mirada ocular no controlan realmente los ojos. El síntoma visible es que los ojos miran hacia abajo con las pupilas casi ocultas cuando el nodo en modo Curves está activo, independientemente de la ubicación del objetivo.
Si ves esto, cambia al modo Bones. El modo Bones rota directamente los huesos oculares, por lo que funciona en todas las variantes de MetaHuman independientemente de cómo esté cableado el Control Rig. Consulta la pestaña Bones en Configuración a continuación.
Configuración
- Modo Curves (predeterminado)
- Modo Bones (alternativa)
La configuración predeterminada. El nodo reside en el Blueprint de Animación Facial estándar y controla las curvas de mirada ocular del Control Rig facial.
Dos pasos: agrega el nodo a tu Gráfico de Animación, luego introduce una ubicación objetivo desde el Gráfico de Eventos.
1. Gráfico de Animación: agrega el nodo
En el Gráfico de Animación de tu Blueprint de Animación Facial:
- Agrega un nodo
Runtime MetaHuman Eyes Aim - Deja Mode configurado en Curves en el panel Detalles
- Colócalo después de toda otra lógica facial que pueda escribir en las curvas de mirada ocular (sincronización de labios, animaciones personalizadas, etc.), mismo principio que el nodo Control Rig de Auto Blink
- Conecta la pose existente a Source Pose
- Conecta la salida al siguiente nodo en tu cadena (o
Output Pose) - Crea una variable
Vectordel Blueprint (por ejemplo,TargetWorldLocation) y conéctala al pin Target World Location del nodo. Actualizarás esta variable desde el Gráfico de Eventos en el siguiente paso.

2. Gráfico de Eventos: introduce una ubicación objetivo
El pin Target World Location espera un FVector en el espacio del mundo. Un caso común es hacer que el MetaHuman mire hacia la cámara del jugador. En Event Blueprint Update Animation:
- Obtén Player Camera Manager (Player Index 0)
- Verifica Is Valid
- Si es válido, llama a Get Camera Location
- Almacénalo en la variable del Blueprint
TargetWorldLocation

Para seguir un actor arbitrario (NPC, objeto, punto de interés) en su lugar, obtén la ubicación de ese actor cada fotograma y almacénala en la misma variable. Para un punto de mirada fijo, establece Target World Location una vez o como una constante en el panel Detalles del nodo.
Usa esta configuración si el enfoque del modo Curves no funciona para tu variante de MetaHuman (consulta la advertencia anterior). En el modo Bones, el nodo rota directamente los huesos oculares y debe ejecutarse después de que el Control Rig haya terminado de evaluar, lo que significa que pertenece al Blueprint de Animación de Postprocesamiento Facial en lugar del Face AnimBP regular.
Tres pasos: localiza el Post Process Anim BP, agrega el nodo después de RigLogic, luego introduce una ubicación objetivo desde el Gráfico de Eventos de ese blueprint.
1. Localiza el Face Post Process Anim BP
- Abre el activo de malla esquelética facial de tu MetaHuman (por ejemplo,
Facedentro de la carpeta de tu MetaHuman) - En el panel Detalles del activo, encuentra el campo Post Process Anim Blueprint
- Abre ese activo, normalmente se llama algo como
Face_PostProcess_AnimBP
2. Gráfico de Animación: agrega el nodo después de RigLogic
En el Gráfico de Animación del Face Post Process Anim BP:
- Localiza el nodo
AnimNode_RigLogicexistente (convierte las curvas del Control Rig facial en transformaciones de huesos) - Agrega un nodo
Runtime MetaHuman Eyes Aimdespués deAnimNode_RigLogicy antes deOutput Pose - En el panel Detalles del nodo, establece Mode en Bones
- Conecta
AnimNode_RigLogical Source Pose del nodo Eyes Aim - Conecta la salida del nodo Eyes Aim a
Output Pose - Crea una variable
Vectordel Blueprint (por ejemplo,TargetWorldLocation) en este Post Process Anim BP y conéctala al pin Target World Location del nodo

Las referencias de huesos predeterminadas (FACIAL_L_Eye y FACIAL_R_Eye) coinciden con el esqueleto facial estándar de MetaHuman. Si tu personaje usa un esqueleto personalizado con diferentes nombres de huesos oculares, anúlalos en el panel Detalles del nodo bajo la categoría Bones.
3. Gráfico de Eventos: introduce una ubicación objetivo
Debido a que el nodo reside en el Post Process Anim BP, la lógica de la ubicación objetivo también debe vivir en el Gráfico de Eventos de este blueprint, no en Face_AnimBP. La configuración es idéntica al modo Curves (obtener la ubicación de la cámara, la ubicación de un actor o usar una constante), solo que realizada dentro de Face_PostProcess_AnimBP.

Cualquier lógica no relacionada (sincronización de labios, auto blink, etc.) puede permanecer en el Face AnimBP regular. Solo el cálculo de la ubicación objetivo para Eyes Aim necesita moverse aquí. El Control Rig facial controla forzosamente los huesos oculares cada fotograma basándose en sus curvas. Si el nodo Eyes Aim se ejecutara en el Face AnimBP regular (antes del Control Rig), el Control Rig sobrescribiría las rotaciones de los huesos después. El Post Process Anim BP se ejecuta después de que el Control Rig ha producido sus transformaciones de huesos finales, por lo que es el lugar correcto para aplicar rotaciones de huesos finales que necesitan "ganar".¿Por qué el modo Bones necesita el Post Process Anim BP?
Configuración
Todas las configuraciones están expuestas en el panel Detalles del nodo Runtime MetaHuman Eyes Aim.
Apuntado y Limitación
Apuntado
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Mode | Curves | Selecciona cómo se controlan los ojos. Consulta Elegir un Modo. |
| Target World Location | (0,0,0) | Punto en el espacio del mundo al que miran los ojos. Expuesto como un pin por defecto. |
bEnabled | true | Cuando es false, los ojos vuelven suavemente hacia adelante e ignoran el objetivo. Expuesto como un pin por defecto. |
Limitación
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Max Yaw Degrees | 35° | Desviación horizontal máxima (guiñada) desde la dirección hacia adelante de la cabeza. Limitado de 0 a 80. |
| Max Pitch Degrees | 25° | Desviación vertical máxima (cabeceo) desde la dirección hacia adelante de la cabeza. Limitado de 0 a 80. |
| Anti Flip Behind | true | Evita que los ojos se inviertan cuando el objetivo pasa detrás de la cabeza. |
Suavizado y Sacadas
Suavizado
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Interp Speed | 12.0 | Velocidad de suavizado para el movimiento ocular. Más alto = más rápido, más bajo = más lánguido. |
Sacadas
Las micro-sacadas son pequeños cambios de mirada aleatorios que los ojos reales realizan constantemente. Agregarlas evita la apariencia de "ojo muerto" de un seguimiento perfectamente suave.
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Enable Saccades | true | Activa/desactiva las micro-sacadas. |
| Saccade Yaw Amplitude Deg | 1.5° | Máxima fluctuación horizontal por sacada. Los valores pequeños (1–2°) se sienten naturales; los valores más grandes se ven nerviosos. |
| Saccade Pitch Amplitude Deg | 1.0° | Máxima fluctuación vertical por sacada. Generalmente ligeramente más pequeño que la amplitud de guiñada. |
| Min Saccade Interval | 0.6 s | Tiempo mínimo entre sacadas. |
| Max Saccade Interval | 2.5 s | Tiempo máximo entre sacadas. Los valores más grandes se sienten más tranquilos, los valores más pequeños se sienten más inquietos. |
Bones (solo modo Bones)
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Left Eye Bone | FACIAL_L_Eye | Nombre del hueso del ojo izquierdo. Coincide con el esqueleto facial estándar de MetaHuman. |
| Right Eye Bone | FACIAL_R_Eye | Nombre del hueso del ojo derecho. Coincide con el esqueleto facial estándar de MetaHuman. |
Calibración (solo modo Curves)
Estos valores definen cómo se asignan los ángulos del espacio de la cabeza a los valores de la curva de mirada ocular del Face CR de MetaHuman. Los valores predeterminados están ajustados para el Face CR estándar de MetaHuman y rara vez necesitan cambiarse.
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Yaw Degrees Per Unit Curve | 30° | Ángulo que se asigna a un valor de curva de 1.0 para las curvas de mirada de guiñada. |
| Pitch Degrees Per Unit Curve | 25° | Ángulo que se asigna a un valor de curva de 1.0 para las curvas de mirada de cabeceo. |
Combinación con Sincronización de Labios y Otras Animaciones
Ambos ayudantes están diseñados para coexistir con los nodos de sincronización de labios del plugin y cualquier animación facial personalizada que ya tengas. La regla general: coloca los nodos Eyes Aim y Control Rig (auto-blink) después de la sincronización de labios y cualquier animación facial personalizada, para que sus valores no sean sobrescritos aguas abajo.
Ver Diagrama de Flujo de Ejecución Detallado (Modo Curves vs. Modo Bones)
Dependiendo de si tu rig de MetaHuman usa el Modo Curves recomendado o el Modo Bones alternativo, la ubicación de tu lógica de ejecución cambiará. Expande el gráfico a continuación para ver el orden de ejecución exacto para ambas canalizaciones:
El parpadeo automático y la sincronización de labios aún residen en el Face AnimBP normal en ambos modos.
Para obtener detalles sobre la superposición con animaciones corporales, consulte Combinación con animaciones existentes.
Notas y limitaciones
Estos ayudantes son específicos de MetaHuman. Dependen de los nombres de curvas estándar del Control Rig facial de MetaHuman (CTRL_L_eye_blink, CTRL_R_eye_blink, CTRL_expressions_eyeLook*) y los huesos oculares estándar (FACIAL_L_Eye, FACIAL_R_Eye). No están diseñados para personajes personalizados que no sean MetaHuman.
¿Necesita ayuda?
Para solicitudes de desarrollo personalizado, contacta a [email protected].