Ayudantes de Animación Ocular
Además de la sincronización de labios, el complemento Runtime MetaHuman Lip Sync incluye dos utilidades auxiliares opcionales para animar los ojos de MetaHuman:
- Auto Blink: un asistente que produce parpadeos 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 mundial
Estas funciones 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 ayudas ligeras y de integración directa para agregar comportamiento ocular realista sin tener que crearlo manualmente.
Vistas previas de funciones
Video Tutorial
Guía completa de ambos ayudantes, incluyendo la solución alternativa para el rig heredado.
Si tu flujo de trabajo de animación facial ya incluye parpadeos y mirada dinámica, puedes omitir esta página. Estos asistentes 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 pueden superponerse sobre animaciones faciales existentes para agregar elementos faltantes, como parpadeos sobre una secuencia que solo anima la boca.
Parpadeo Automático
El asistente de parpadeo automático produce parpadeos aleatorios y de aspecto natural al controlar las curvas CTRL_L_eye_blink y CTRL_R_eye_blink del Control Rig Facial de MetaHuman.
Cómo Funciona
Cada fotograma, llama a Update MetaHuman Auto Blink desde el Event Graph de tu Face Animation Blueprint y pasa el delta time del fotograma. La función:
- Realiza un seguimiento del estado por personaje (próximo momento de parpadeo, fase actual de apertura/cierre, etc.) indexado por el
AnimInstanceque lo invoca - Devuelve dos valores flotantes en el rango 0..1, uno para el ojo izquierdo y otro para el ojo derecho, que representan qué tan cerrado está cada ojo en ese momento
- Luego almacenas estos valores en variables de Blueprint y los introduces en el nodo Control Rig del Anim Graph
Configuración
Dos pasos: agrega la llamada de parpadeo a tu Event Graph, luego introduce los valores en un nodo de Control Rig en el Anim Graph.
1. Event Graph: controla los valores de parpadeo en 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 Evento de Actualización de Animación del Blueprint:
- Llama
Update MetaHuman Auto Blink - Conecta Delta Time X (del evento) a Delta Seconds
- (Opcional) Configura la estructura Config. Los valores predeterminados ya se ven naturales
- Promueve Left Blink Value y Right Blink Value a variables de Blueprint (por ejemplo,
LeftBlinkValue,RightBlinkValue)

2. Anim Graph: introduce los valores en el Face Control Rig
En el Anim Graph del mismo Animation Blueprint:
- Coloque un nodo de Control Rig después de toda la lógica facial que pueda escribir en las curvas de parpadeo (por ejemplo, después de
Blend Runtime MetaHuman Lip Syncy cualquier capa de animación facial personalizada) - En el panel de Detalles del nodo, establezca Clase de Control Rig (Referencia de activo de Control Rig en UE 5.8+) en su Control Rig facial de MetaHuman. La ruta es típicamente:
/All/Game/MetaHumans/Common/Face/Face_ControlBoard_CtrlRig- Su proyecto puede tener una ruta diferente dependiendo de cómo se importó el MetaHuman.
- En el panel Detalles, expande la sección Entrada y habilita Usar 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 de Control Rig después de los nodos de mezcla de sincronización labial (y de 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 una estructura 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 configuración
Tiempo
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Tiempo mínimo entre parpadeos | 2.0 s | Intervalo mínimo entre parpadeos mientras los ojos están completamente abiertos. |
| Tiempo Máximo Entre Parpadeos | 4.0 s | Intervalo máximo entre parpadeos. El intervalo real se aleatoriza entre el mínimo y el máximo. |
| Tiempo mínimo de espera cerrado | 0.04 s | Tiempo mínimo que los ojos permanecen completamente cerrados. |
| Tiempo máximo de espera cerrada | 0.08 s | Tiempo máximo que los ojos permanecen completamente cerrados. |
Interpolación
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Velocidad de Interpolación Cercana | 35.0 | Velocidad al cerrar los ojos. Los humanos cierran los ojos más rápido de lo que los abren, por lo que este valor es intencionalmente más alto que la velocidad de apertura. |
| Velocidad de Interpolación Abierta | 18.0 | Velocidad al abrir los ojos. |
| Umbral Cerrado | 0.97 | Valor en el que el parpadeo se considera "completamente cerrado" y comienza la fase de retención. |
| Umbral Abierto | 0.02 | Valor en el que el parpadeo se considera "completamente abierto" y se programa el siguiente parpadeo. |
Misc
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Ojos Independientes | falso | 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 false, los ojos se abren gradualmente y la parpadeo se detiene. Ú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 determinado (por ejemplo, al reaparición de un personaje o al cambiar estados cinemáticos).
Apuntería de los Ojos
El ayudante de dirección de la mirada es un nodo de Animation Blueprint (Runtime MetaHuman Eyes Aim) que hace que los ojos del personaje sigan una ubicación en el espacio mundial, 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 giros bruscos cuando el objetivo pasa detrás de la cabeza y microsacadas opcionales para mayor realismo.
Seleccionando un Modo
El nodo admite dos modos, seleccionables mediante el menú desplegable Modo en el panel de Detalles del nodo:
| Mode | Lo que impulsa | Dónde colocarlo |
|---|---|---|
| Curvas (predeterminado) | Las curvas de mirada de los ojos del Control Rig facial (CTRL_expressions_eyeLook*) | En el Blueprint de Animación Facial (por ejemplo, Face_AnimBP), antes del nodo de Control Rig |
| Huesos | Los huesos FACIAL_L_Eye / FACIAL_R_Eye directamente, omitiendo el Control Rig. | En el Animation Blueprint de Post Procesamiento Facial (por ejemplo, Face_PostProcess_AnimBP), después del nodo AnimNode_RigLogic |
Modo de curvas es el valor predeterminado recomendado. Se combina limpiamente con otros sistemas faciales basados en curvas (sincronización de labios, expresiones, formas de mezcla de ARKit, etc.), ya que los valores se combinan mediante la evaluación normal del Control Rig en lugar de competir por las transformaciones de los huesos.
En algunas variantes de MetaHuman (especialmente rigs antiguos, incluyendo algunos descargados a través de Quixel Bridge), las curvas de dirección de la mirada 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 Curvas está activo, independientemente de la ubicación del objetivo.
Si ves esto, cambia al modo Huesos. El modo Huesos rota directamente los huesos de los ojos, por lo que funciona en todas las variantes de MetaHuman independientemente de cómo esté cableado el Control Rig. Consulta la pestaña Huesos en Configuración a continuación.
Configuración
- Modo Curvas (predeterminado)
- Modo Huesos (fallback)
La configuración predeterminada. El nodo reside en el Animation Blueprint facial estándar y controla las curvas de mirada de los ojos del Control Rig facial.
Dos pasos: añade el nodo a tu Anim Graph, luego asígnale una ubicación objetivo desde el Event Graph.
1. Anim Graph: añade el nodo
En el Anim Graph de tu Blueprint de Animación Facial:
- Agrega un nodo
Runtime MetaHuman Eyes Aim - Deja Mode configurado en Curves en el panel de Detalles
- Colócalo después de toda otra lógica facial que pueda escribir en las curvas de mirada (sincronización de labios, animaciones personalizadas, etc.), mismo principio que el nodo de Control Rig de Auto Parpadeo
- Conecta la pose existente a Source Pose
- Conecta la salida al siguiente nodo en tu cadena (o
Output Pose) - Crea una variable de Blueprint de tipo
Vector(ej.TargetWorldLocation) y conéctala al pin Target World Location del nodo. Actualizarás esta variable desde el Event Graph en el siguiente paso.

2. Event Graph: introduce una ubicación objetivo
El pin Ubicación del Mundo Objetivo espera un FVector en espacio mundial. Un caso común es hacer que el MetaHuman mire hacia la cámara del jugador. En Evento de Actualización de Animación del Blueprint:
- 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 de Blueprint
TargetWorldLocation

Para rastrear un actor arbitrario (NPC, objeto, punto de interés) en su lugar, obtén la ubicación de ese actor en cada fotograma y guárdala en la misma variable. Para un punto de mirada fijo, establece Ubicación Mundial Objetivo una vez o como una constante en el panel de Detalles del nodo.
Usa esta configuración si el enfoque del modo Curvas no funciona para tu variante de MetaHuman (consulta la advertencia anterior). En el modo Huesos, el nodo rota directamente los huesos de los ojos y debe ejecutarse después de que el Control Rig haya terminado de evaluar, lo que significa que pertenece al Animation Blueprint de Postproceso Facial en lugar del AnimBP facial normal.
Tres pasos: localiza el Post Process Anim BP, añade el nodo después de RigLogic, luego proporciónale una ubicación objetivo desde el Event Graph de ese blueprint.
1. Localiza el Face Post Process Anim BP
- Abre el activo Skeletal Mesh de la cara de tu MetaHuman (por ejemplo,
Facedentro de la carpeta de tu MetaHuman) - En el panel Detalles del activo, localiza el campo Post Process Anim Blueprint
- Abre ese activo, que normalmente se llama algo como
Face_PostProcess_AnimBP
2. Anim Graph: añade el nodo después de RigLogic
En el Anim Graph 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 de Detalles del nodo, establece Mode en Bones
- Conecta
AnimNode_RigLogica la Source Pose del nodo Eyes Aim - Conecta la salida del nodo Eyes Aim a
Output Pose - Crea una variable
Vectorde Blueprint (por ejemplo,TargetWorldLocation) en este Post Process Anim BP y conéctala al pin Target World Location del nodo

Las referencias de hueso predeterminadas (FACIAL_L_Eye y FACIAL_R_Eye) coinciden con el esqueleto facial estándar de MetaHuman. Si tu personaje utiliza un esqueleto personalizado con nombres de huesos oculares diferentes, anúlalos en el panel de Detalles del nodo, en la categoría Huesos.
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 residir en el mismo Event Graph 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, parpadeo automático, etc.) puede permanecer en el Face AnimBP regular. Solo el cálculo de la ubicación objetivo para la dirección de la mirada (Eyes Aim) debe moverse aquí. El Control Rig Facial fuerza el movimiento de los huesos de los ojos en cada fotograma según sus curvas. Si el nodo de Dirección de la Mirada se ejecutara en el AnimBP facial normal (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 haya producido sus transformaciones óseas finales, por lo que es el lugar correcto para aplicar las rotaciones finales de los huesos que deben "prevalecer".¿Por qué el modo Bones necesita el Post Process Anim BP?
Configuración
Todos los ajustes están expuestos en el panel de Detalles del nodo Runtime MetaHuman Eyes Aim.
Apunta y Sujeta
Apunta
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Mode | Curvas | Selecciona cómo se controlan los ojos. Consulta Elegir un modo. |
| Ubicación del Mundo de Destino | (0,0,0) | Punto en espacio mundial hacia el que miran los ojos. Expuesto como un pin por defecto. |
bEnabled | true | Cuando false, los ojos vuelven gradualmente a la posición frontal e ignoran el objetivo. Expuesto como pin por defecto. |
Ajustar
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Grados máximos de guiñada | 35° | Desviación horizontal máxima (yaw) desde la dirección frontal de la cabeza. Limitado de 0 a 80. |
| Grados máximos de inclinación | 25° | Desviación vertical máxima (cabeceo) desde la dirección frontal 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 |
|---|---|---|
| Velocidad de Interpolación | 12.0 | Velocidad de suavizado para el movimiento ocular. Más alto = más rápido, más bajo = más lento. |
Sacadas
Las microsacadas son pequeños desplazamientos aleatorios de la mirada que los ojos reales realizan constantemente. Agregarlas evita el aspecto de "ojos muertos" que produce un seguimiento perfectamente suave.
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Habilitar Sacadas | true | Activa/desactiva los micro-sacádicos. |
| Amplitud de guiñada de sacada en grados | 1,5° | Máximo jitter horizontal por sacada. Los valores pequeños (1–2°) se sienten naturales; los valores más grandes se ven nerviosos. |
| Amplitud de tono de sacada Deg | 1.0° | Máximo jitter vertical por sacada. Generalmente ligeramente menor que la amplitud de guiñada. |
| Intervalo Mínimo de Sacadas | 0.6 s | Tiempo mínimo entre sacadas. |
| Intervalo máximo de sacada | 2.5 s | Tiempo máximo entre movimientos sacádicos. Los valores más grandes se sienten más tranquilos, los valores más pequeños se sienten inquietos. |
Huesos (solo en modo Huesos)
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Hueso del Ojo Izquierdo | FACIAL_L_Eye | Nombre del hueso del ojo izquierdo. Coincide con el esqueleto facial estándar de MetaHuman. |
| Hueso del Ojo Derecho | FACIAL_R_Eye | Nombre del hueso del ojo derecho. Coincide con el esqueleto facial estándar de MetaHuman. |
Calibración (solo modo Curvas)
Estos valores definen cómo los ángulos del espacio de la cabeza se asignan a los valores de la curva de mirada ocular del CR de la cara de MetaHuman. Los valores predeterminados están ajustados para el CR de cara de MetaHuman estándar y rara vez necesitan cambiarse.
| Propiedad | Predeterminado | Descripción |
|---|---|---|
| Curva de Grados de Guiñada por Unidad | 30° | Ángulo que se asigna a un valor de curva de 1.0 para las curvas de mirada en guiñada. |
| Curva de Grados de Inclinación por Unidad | 25° | Ángulo que se asigna a un valor de curva de 1.0 para las curvas de mirada de inclinación. |
Combinando 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 de Dirección de Ojos y Control Rig (parpadeo automático) después de la sincronización de labios y cualquier animación facial personalizada, para que sus valores no se sobrescriban aguas abajo.
Ver Diagrama de Flujo de Ejecución Detallado (Modo Curvas vs. Modo Huesos)
Dependiendo de si tu rig de MetaHuman utiliza el modo Curvas recomendado o el modo Huesos 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 ambos pipelines:
El parpadeo automático y la sincronización de labios aún residen en el Face AnimBP normal en ambos modos.
Para obtener más detalles sobre la superposición con animaciones corporales, consulta Combinación con Animaciones Existentes.
Notas y Limitaciones
Estos ayudantes son específicos de MetaHuman. Dependen de los nombres estándar de las curvas del Control Rig facial de MetaHuman (CTRL_L_eye_blink, CTRL_R_eye_blink, CTRL_expressions_eyeLook*) y de los huesos oculares estándar (FACIAL_L_Eye, FACIAL_R_Eye). No están diseñados para personajes personalizados que no sean MetaHuman.
¿Necesitas ayuda?
Para solicitudes de desarrollo personalizado, contacta a [email protected].