Im trying to make a meta human head / eyes follow and track a player in Realtime. Now I can do this with brute force drive of the bones, but it lacks the nice additional blenshapes of the eyelids.
So I want to know how I could access this eye aim control in a anim BP and set its world location. been asking this for months without a single answer
You can easily access the Control Rig controls inside the AnimBP.
In the AnimBP add a Control Rig node, set it to the Face_ControlBoard_CtrlRig.
Then in the details panel, below the input, type eyes.
Youâll see the CTRL_C_eyesAim input available, just flag the âUse Pinâ and you have the data available as an input in the Control Rig node.
From there you can control it via the AnimBP or by BP.
Firstly Thanks for the answer.
I actually tried this , while this project is still in UE4 but nothing pops up in the input value.
I Wonder if this in an issue with UE4 and I should just upgrade the project to see those pins
The setup works in UE5, I know that UE4 version is behind and most likely wonât be updated, but here is a solution:
You can set the CTRL_C_eyesAim to be driven by a variable, so do the following
- Create a variable ( Under the MyBlueprint tab, call it CTRL_C_eyesAim ) and set it to editable ( eye icon ), then set the control CTRL_C_eyesAim to be driven by the variable
- In the AnimBP, assign the ControlRig Face_Board, and in the inputs you will see the CTRL_C_eyesAim variable, which will drive the control inside the Control Rig
AWESOME !
I Have been after a solution to this for a while , huge thanks my Reality Friend
I will load up a UE5 version of this to try
OK so I have finally got this working the way I would like .but there is a single problem remaining.
if my metahuman at the world origin everything works fine, and there eyes follow the tracked actor perfectly. But if I move them from the world origin there eyes stop following the tracked actor correctly. not sure what causing this to happen.
ANYONE!
works great Until I move the MH from the world origin. then it breaks . Strange thing is up down works fine still . just left right seems to be based on world origin Really need to solve this or I will have to scrap this idea
Video
Try to use local space instead of global space, then I suggest you to attach the controller to the root of the rig, so that it will also rotate accordingly to your character orientation.
Iâm trying to do the same thing - can I ask how did you make it work? When I try setting CTRL_C_eyesAim transform in AnimBP to some world location, itâs completely wrong and looking at the control rig itself, itâs in a weird local space. Mind posting a shot of your AnimBP that sets it from some world position?
Hi . I did finally figure things out and Created this solution for others to use and build on.
NPC HEAD - LOOK PRO
Can I bump this thread? Iâm running into the same issue as @badziubadziu . My control rig is placing the eyeAim at 0,0,0. Iâve tried local and global space on the control node. The target (in world) is sending location via the MH blueprint but for some reason the control rig doesnât want to pick it up. Any suggestion would be helpful. @BaseReality I bought your solution, but the set-up is more than I need. Iâm looking for a simple way to addon to existing Face CTRL rig that I can access in sequencer and control the eye gaze there.
AnimGraph setup:
CTRL Rig setup:
eyesAim looking at 0,0,0:
Debug of look at target getting valid world location:
Found my solution:
This is my first time to see this AnimBlueprint node âControl RigâďźI am tryjing to find a way to pass data to skeletalmesh control rigďźit helped me so muchďźthank youďź
For anyone else struggling: you also have to expose pin CTRL_LookAtSwitch and set it to 1.0.
Question, though: this does override the face animation completely. So if I have a facial animation for lip sync for example, that gets overridden by the control rig and the mouth does not move at all.
Anyone know how to make the Control Rig node override only eyes movement?
I have been trying to do this in Blueprints, not sequencer. I discovered a workaround I believe. Try it to see if it works for you:
- Duplicate the default MetaHuman face board control rig
- Add this control rig to beginning of the post process anim bp anim graph.
- Inside of this control rig, delete all nodes that are not relating to the eyes or eyelids.
- Enable by exposing pin for switch curve and look at vector.
I believe this lets you only override the eye and eye lid animations, if using a lip sync solution for example. The exposed vector is also local space, making implementation a big less explicit. For my current use case, world space look at is not required, but this has been added to my long list of âfigure out how to do it perfectlyâ for MetaHumans.
Good luck.