A quick tutorial on adding FK Control Rig in the Sequencer to drive blend shapes or morph target animation.
https://dev.epicgames.com/community/learning/tutorials/p4Xx/driving-blend-shapes-or-morph-targets-using-control-rig
Love these byte sized videos that increase your UE IQ on a daily basis.
Cheers .
Can we string together 3 different morphs targets of an eye blink and link it to a slider control that has a range from 0 to 1? The slider will drive the 3 morph in sequence; one after the other in Sequencer. Morph “A” would be the first stage of a blink, then the Morph “B” would be the second stage of the blink as the eyelid wraps around the wide part of the eye and then the Morph “C” would be the last stage of the blink with the eyelid at the bottom. When I move the slider in Sequencer from 0 to 1, the 3 different morphs would blend/sequence together making a seamless eye blink.
All of the morph targets would import into the engine, and can be driven in the sequencer using this method. The issue you may run into is that morph targets are linear in nature, meaning that the vertices are going from one position to another. A potentially better way to have what you describe is to rig the face with joints that control the eyelids, and use a Control Rig to animate the eyelids by joint rotation. This would follow the arc of the eyeball in a much cleaner way, and could be re-animated easily in engine.
Thank you
Great Tutorial. I am struggling with having my morph targets controlled by FK control rig and my material effects under my Skeletal mesh component operate independently within the sequencer. When they are both keyframed, the control rig seems to manipulate the material effects parameter independently of my keyframes. Still occurs even after attempt to use baked animation. Its almost as if the animation dictates the material effect by default
May be hard to understand, let me know if more clarification is needed.
If there is an example you can post for a visual, that would be great to see. FK Control Rig is baked by default, but once you have the parameter exposed, you can keyframe the attributes by removing the baked keys, and setting your own values.
Ohh
Hello, might there be a tutorial that illustrates how to use “Pose Driver” to drive “multiple” bone driven corrections and or Blendshapes corrections?
Problem: Using the “Pose Driver” I cannot seem to get multiple deformations to work in consecutive order; I can only get 1 deformation to work on a bone.
For example, can you please do a video for hooking up RBF deformations? Like how you would use RBF to get a perfect elbow skin deformer flex and show the forearm muscle compressing against the bicep muscle with “3” RBF elbow deformations or “3” blendshape corrections?
a. Like an elbow bend at 90 degrees with RBF or blendshape corrections?
b. An elbow bend where the forearm compresses against the bicep bend at 125 degrees with RBF or blendshape corrections?
c. And a final elbow bend where the forearm compresses against the bicep bend at 145 degrees with RBF or blendshape corrections?
That may be more aligned with using the ML Deformer setup, which builds all of the deformations into the the animation itself.
The ‘ML Deformer doc’ does not seem to have any workflow solution. Is there a web page that can provide a solution?
Great video! Super useful and concise.
Hello, wdwelly. May I ask, were you able to get multiple morphs assigned to one bone rotation? Like 3 different bicep consecutive flex morphs as the elbow bone rotates and compresses and grows a bicep flex?
Or, is there a limit to just one morph assigned to one bone?
Cocoflakes, I agree with Michael Neely when he says that radial deformations, like eyelids opening and closing, are best handled with joints rather than morph targets, but I can see that there will be times when you want to use a series of morph targets as a corrective blendshape that’s driven by joint rotation.
You can acheive that by creating a control rig for your skeletalMesh and then:
Getting the rotation for your joint
Passing the result to a “To Euler” node
Dividing the output of your rotation value to bring its range within 0 to 1
Passing that result to an “Evaluate Curve” node
Pass the result from the Evaluate Curve node to a “Set Curve Value” that points to your morph target.
The key to this set up is having a series of Evaluate Curve and Set Curve Value nodes, one for each morph target. In my set up I had three morph targets so I had three Evaluate Curve nodes, with each curve offset to represent the range of motion that each morph target is intended for. The first curve’s keys go from 0, 0 to 0.32, 0. with that result going to the first Set Curve Value node. The next Evaluate Curve node’s keys went from 0.34, 0 to 0.66, 0 with that result going to my second Set Curve Value node, etc.
The nice thing about the Evaluate Curve node set up is that it gives you explicit control ovbe how the morph target values are executed by adjusting the shape of the curves.
Thanks,
wdwelly
Thank you SO MUCH!
Thanks for the tutorial. It seems the interface somehow has changed though as I can’t find the command “Edit with FK Control Rig” no more. I was wondering what is the the new way to do it now?