MetaHuman Face Reaction AnimBP
Budget: $10 – $20 NZD
UE 5.7 fighting game project. I need a custom Face Animation Blueprint that lets me play AnimSequences via PlaySlotAnimationAsDynamicMontage on a MetaHuman face skeletal mesh, bypassing the standard Face_AnimBP / Face_PostProcess_AnimBP assembled pipeline (which is consuming/zeroing slot output in my project).
Build standalone in your own project — no access to mine required. Use a fresh UE 5.7 project + default MetaHuman sample for development and testing.
Background (so you can skip diagnostics):
My project uses TrueFGE (TRUE Fighting Game Engine, Glinda Games) as a Blueprint-only fighting game foundation. Spawned characters use MetaHuman wrappers. I have a custom function MaybePlayFaceReaction(Tag, Probability) on the base character that successfully:
∙ Finds the Face skeletal mesh component via GetChildrenComponents (Include All Descendants)
∙ Casts to SkeletalMeshComponent (succeeds)
∙ Gets the Anim Instance
∙ Calls PlaySlotAnimationAsDynamicMontage(TestFaceAnim, "DefaultSlot", 0.1, 0.2, 1.0, LoopCount=0)
∙ Function returns a valid montage
But the face does not visibly animate at runtime, even though the same AnimSequence plays correctly when previewed on Aoi_FaceMesh in the Animation Editor (with Face_PostProcess_AnimBP enabled).
Already verified / ruled out:
∙ AnimSequence file is good (plays in preview on the correct skeleton)
∙ Skeleton mismatch is not the issue
∙ LOD stripping facial bones (ForcedLOD = 1)
∙ Visibility-Based Anim Tick (set to Always Tick Pose and Refresh Bones)
∙ Update Rate Optimizations (disabled)
∙ Component lookup picking wrong mesh (verified via debug prints)
∙ Cast To Face_AnimBP at runtime (was failing, now removed — call goes through Get Anim Instance directly)
∙ Tested with Disable Post Process Blueprint = ON and OFF — neither shows facial movement in PIE
∙ Loop Count = 0 (infinite) so timing is not the issue
Suspected root cause: UE 5.6+ MetaHuman “Assembled” BP architecture. The slot fires but mh_arkit_mapping_pose and/or Face_PostProcess_AnimBP curve evaluation zeroes the result before render. TrueFGE only retargets the body, not the face.
Recommended fix path: Build a minimal custom Face AnimBP (Sequence Player → Slot 'DefaultSlot' → Output, parented directly to UAnimInstance). Assign it to the Face component at runtime via SetAnimInstanceClass on OnAnimInitialized. This bypasses the entire MetaHuman post-process pipeline for face reactions.
Skeleton compatibility note: AnimBP target skeleton should be Face_Archetype_Skeleton (standard MetaHuman face skeleton). My MetaHuman character is from approximately mid-2024 — please flag if you see any skeleton compatibility issues during your testing.
Deliverables:
1. The compiled .uasset file for the custom Face AnimBP
2. 30-60 second screen recording showing it working in your test project (face visibly animating from a slot call)
3. Brief integration notes (5-10 lines) covering:
∙ How to assign the AnimBP to a MetaHuman Face component at runtime via SetAnimInstanceClass in OnAnimInitialized
∙ Any setup gotchas (target skeleton, slot name, anim mode)
∙ Confirmation tested with at least 2 different AnimSequences
Required skills:
∙ UE5 Animation Blueprint authoring (advanced)
∙ MetaHuman 5.6/5.7 facial animation pipeline — must know the assembled BP / post-process AnimBP architecture and its quirks
∙ Slot-based montage playback
Build standalone in your own project — no access to mine required. Use a fresh UE 5.7 project + default MetaHuman sample for development and testing.
Background (so you can skip diagnostics):
My project uses TrueFGE (TRUE Fighting Game Engine, Glinda Games) as a Blueprint-only fighting game foundation. Spawned characters use MetaHuman wrappers. I have a custom function MaybePlayFaceReaction(Tag, Probability) on the base character that successfully:
∙ Finds the Face skeletal mesh component via GetChildrenComponents (Include All Descendants)
∙ Casts to SkeletalMeshComponent (succeeds)
∙ Gets the Anim Instance
∙ Calls PlaySlotAnimationAsDynamicMontage(TestFaceAnim, "DefaultSlot", 0.1, 0.2, 1.0, LoopCount=0)
∙ Function returns a valid montage
But the face does not visibly animate at runtime, even though the same AnimSequence plays correctly when previewed on Aoi_FaceMesh in the Animation Editor (with Face_PostProcess_AnimBP enabled).
Already verified / ruled out:
∙ AnimSequence file is good (plays in preview on the correct skeleton)
∙ Skeleton mismatch is not the issue
∙ LOD stripping facial bones (ForcedLOD = 1)
∙ Visibility-Based Anim Tick (set to Always Tick Pose and Refresh Bones)
∙ Update Rate Optimizations (disabled)
∙ Component lookup picking wrong mesh (verified via debug prints)
∙ Cast To Face_AnimBP at runtime (was failing, now removed — call goes through Get Anim Instance directly)
∙ Tested with Disable Post Process Blueprint = ON and OFF — neither shows facial movement in PIE
∙ Loop Count = 0 (infinite) so timing is not the issue
Suspected root cause: UE 5.6+ MetaHuman “Assembled” BP architecture. The slot fires but mh_arkit_mapping_pose and/or Face_PostProcess_AnimBP curve evaluation zeroes the result before render. TrueFGE only retargets the body, not the face.
Recommended fix path: Build a minimal custom Face AnimBP (Sequence Player → Slot 'DefaultSlot' → Output, parented directly to UAnimInstance). Assign it to the Face component at runtime via SetAnimInstanceClass on OnAnimInitialized. This bypasses the entire MetaHuman post-process pipeline for face reactions.
Skeleton compatibility note: AnimBP target skeleton should be Face_Archetype_Skeleton (standard MetaHuman face skeleton). My MetaHuman character is from approximately mid-2024 — please flag if you see any skeleton compatibility issues during your testing.
Deliverables:
1. The compiled .uasset file for the custom Face AnimBP
2. 30-60 second screen recording showing it working in your test project (face visibly animating from a slot call)
3. Brief integration notes (5-10 lines) covering:
∙ How to assign the AnimBP to a MetaHuman Face component at runtime via SetAnimInstanceClass in OnAnimInitialized
∙ Any setup gotchas (target skeleton, slot name, anim mode)
∙ Confirmation tested with at least 2 different AnimSequences
Required skills:
∙ UE5 Animation Blueprint authoring (advanced)
∙ MetaHuman 5.6/5.7 facial animation pipeline — must know the assembled BP / post-process AnimBP architecture and its quirks
∙ Slot-based montage playback
Related categories:
Animation
Maya
3D Modelling
3D Animation
Unity 3D
3D Design
Game Development
Unreal Engine