This series is well explained and best put together source of information that I have found on Control Rigs thus far! As a Marketing and advertising specialist, previously working in high tech, I am now transitioning into game dev with a focus on VFX and advanced animation ,and with two videos I am am sincerely blown away with the quality of this content. Thank you! I feel I have finally put together the logic as a whole in my mind and finally figured out how these pieces fit together!
Dude that was friggin awesome! I was having a hard time wrapping my head around control rigs in combination with forward and inverse kinematics. But watching your video, making that control rig from scratch, aswell as the useful construction setup, made it so much easier to see behind the curtains! You explained it really well and for me as a beginner it's very easy to understand! Thank you very much for putting out these kind of videos, very much appreciated!
Hi, always happy to share some Tipps😊. 27:55 regarding the mirror, don’t use the flip Axis. You see the results are twisted controls. You only want to mirror the X Axis so set the second option to none. Can confirm this works. A second Tipp is as you say, we can copy the code to all other Riggs. When you go in the my BP tab below the viewport you can create functions. Park the code in a function, give it a name like „connect bones to -ctrl“ and make it public. Then when you rightclick in any rig graph you can search for it and apply. No need to search for the rig you created the code in anymore.
Awesome, as always. Thanks for chiming in. I will give the mirror a shot and as far as funcitons, that is the plan, once we have the building blocks for a rig the plan was to convert them into functions etc as kind of a wrap up. Planning on keeping it basic, FK, IK, some switch and spine options and then have a nice clean simple rig that we can "funcitonify" But most important THANK YOU for sharing!
hmmmm...I was pretty sure I had tried that, so went back and gave it another shot. No luck with the drone, BUT it does work on the dragon. I'll have to figure out the difference
@@livinfreestyle6727 🤔 maybe the orientation of your bones differ to much. Means maybe the bones direction is running in a different direction to the left ones, like main axis is Y instead of X, or Z goes down instead of up, the mirror might not work correctly. But then flipping the axis should fix the issue 🤔🤔🤔 so I would check the orientation of the bones first. Hope this helps to find the issue 🙂
yeah, I haven't looked yet (wrapping the next video), but my guess is that the drone is Y down and the dragon is X....unreal sometimes get funky if it's not X. I'll report back in a bit
ok, crazy enough I went back and it was working. It turns out BOTH had to be X. It's super not what you would htink in a two axis situation, but it seems that the second axis flips the shape properly. Just had to try a few more combos I guess
That construction script is very handy but the only issue I foresee with it is in cases where you want your controller to be offset from the current bone position. This construction script would apply to all bones and you would either have to not do that or add in some exception which I think could become a nightmare really fast.
For anyone struggling at the 18:49 mark notice that he was able to keep the twist bones out of the rig because of the hierarchy. Many characters can have these twist bones parented to the calf, lower arm, thigh etc and if they are apart of the hierarchy they need to be included in the control rig or when you hook it up to the forward solve your controls will go crazy and all over the place.
This turned out true for me. I'm using the mannequin skeleton exported out to blender, then reimported back into UE with my own character mesh. When I mirror my twist bones would fly off, breaking the mesh. But if I just make controls for the twist bones and mirror them, choosing X for mirror axis and None for flip, then they work just fine.
I find it interesting comparing IK and FK to real life. I think IK is more representative of what I do in real life. For example, if my hand is resting on the table and I lean to the sides, my hands for the most part stay where they are. It's like my brain is automatically trying to maintain their position in the world. My partner on the other hand has poor spacial awareness so maybe she runs on FK lol. Anyways, thanks for the video. :)
That is hilarious. There are pros and cons to both IK and FK and both are helpful in different situations. Which is why its great that we can choose. Thx for the watch and thoughts
Top tier video! This is making a lot of sense now - thank you! Where do retarget tools fit into this mix or pipeline? Hopefully someone can find an easier mirror workaround. Thanks again for starting with foundational concepts. Really helps
Retargeting has a lot of potential meanings. Unreal engine runtime retargeting (although not sure that's a tool), the actual IK retargeter and then source side asset retargeting tools, skeleton retargeting options, etc....but we can take a look at some of those . Glad the videos help
@@livinfreestyle6727 thank you! I’ve only heard of IK retargeter up to this point. I also discovered a control rig addon from Epic at the UE marketplace that I’ll experiment with. Thanks again!
Great video, Having unique issues with my custom skeletal mesh i made with a blender model i sculpted. Only the root_ctrl actually moves the skeleton but any specific ctrl doesn't actually move the bones.
I guess you could say I learned it on the job or along the way. My degree was not in art and I can't really think of any paid classes, but various tutorials throughout time as well as the people I have worked with who were gracious enough to share their knowledge
We could do pistons and yes to driven controls (this could have multiple definitions and I think we are going to go over all the ones you might be talking about)
C++ will generally execute faster, but probably something you only have to worry about depending where your bottlenecks are. (for example if it was always that way then everything would get converted and nobody does that, we all still have blueprints)
I am relatively new to unreal engine having previously used blender. In blender there was an option to preserve the volume of a model. as far as I know, this option does not exist in Unreal engine 5. when I rotate the arm for example, the mesh shrinks into nothing at the midway point. I don't know if this gets covered later in this series but do you know how to stop this from happening? thank you.
Im pretty sure Blender does this with dual quaternion skinning. I don't believe eunreal has that yet and also it does a pretty good job but ultimately we end up using correctives either way. Correctives is something we do need to cover.
When I connect everything up in the forward solve graph the "Get Transform - Bone" node and the "Set Transform - Bone" node both throw errors. The error reads the same on both nodes and says "Array Index (x) out of bounds (count 0)." The "x" represents any number from 1-6. From what I can tell, there is no reason that it wouldn't see the array of controls from the "get all" node. Please let me know what I'm missing! Thanks.
That's very hard to troubleshoot in a UA-cam comment. I would recommend joining the discord and putting your blueprint in the questions forum so we can see what might be going on.
Have you checked out the live section yet? Depending on what about it you are looking for these might be helpful: ua-cam.com/users/livetfcBFEWzhkE?feature=share ua-cam.com/users/livevGqXI1r2dFU?feature=share ua-cam.com/users/livejMUs08vuEqg?feature=share
do you mean like the classic overlap tool setup? WHere you have a control that the udnerlyijng is trying to match but the animator can also pose to help "shape" the simulation? or do you actually mean have the physics asset drive the control rig initial pose
You mention "the dragon video" but I can't for the life of me find it, do you have a link? I'm rigging a snake and am looking for resources for something not quite as humanoid
The only time I've had trouble with this is if I was actually driving the bone and didn't realize it. So do you ahve a control or something that is driving that bone/control?
@@livinfreestyle6727 I think I have solved the problem. I had to use Shift+P to remove the controller from the skeleton hierarchy, and now I can rotate the bones using Gizmo.
Hey, could you help me with a problem i'm having with control rig? i made a short video on youtube, the video is in German. but i think you can understand what the problem might be, i can't find a solution for weeks.. and seeing how much knowledge you have, i hope you can help me with a comment under my video or at least point me in the right direction. Otherwise if you don't understand the problem because of the language I would make another video in English :)
OK, I'm not positive, BUT you can see that your upper wing has a different orientation than the lower wing. One joint has 'Y' is back toward the tail and the other 'Y' is toward the head. Essentially depending on the solver its important that upper and lower arm are oriented to the same plane! I actually just covered this in the IK video. It drops on Sunday.
For anyone interested we were able to figure this out and it does in fact appear that the IK solver wants the two joints to be properly aligned in rotation
I'm moving our indie pipeline from Maya to working entirely in Unreal and Blender and these tutorials are EVERYTHING!
Great to hear! We do have a fair few Blenders in discord too that help each other out
This series is well explained and best put together source of information that I have found on Control Rigs thus far! As a Marketing and advertising specialist, previously working in high tech, I am now transitioning into game dev with a focus on VFX and advanced animation ,and with two videos I am am sincerely blown away with the quality of this content. Thank you! I feel I have finally put together the logic as a whole in my mind and finally figured out how these pieces fit together!
Glad this was helpful and thanks for dropping feedback and letting me know!
I really like those little details you don't miss, those shotcuts, tips & tricks, small but useful. Thanks!
No problem!
Seeing forward and inverse kinematics after finishing my robotics classes with no linear algebra needed is SO nice 😂
Thanks for the tutorial!!
Happy to help!
Dude that was friggin awesome! I was having a hard time wrapping my head around control rigs in combination with forward and inverse kinematics. But watching your video, making that control rig from scratch, aswell as the useful construction setup, made it so much easier to see behind the curtains! You explained it really well and for me as a beginner it's very easy to understand! Thank you very much for putting out these kind of videos, very much appreciated!
Glad I could help!
Thanks a lot for this. Very useful tutorials!
Glad it was helpful!
this control rig base is genius!
12:26 - widget reflector | Tools > Debug > Widget Reflector
or ctrl+shft+W thx for helping out!
@@livinfreestyle6727 Awesome! Thanks for sharing the shortcut!
Hi, always happy to share some Tipps😊. 27:55 regarding the mirror, don’t use the flip Axis. You see the results are twisted controls. You only want to mirror the X Axis so set the second option to none. Can confirm this works.
A second Tipp is as you say, we can copy the code to all other Riggs. When you go in the my BP tab below the viewport you can create functions. Park the code in a function, give it a name like „connect bones to -ctrl“ and make it public. Then when you rightclick in any rig graph you can search for it and apply. No need to search for the rig you created the code in anymore.
Awesome, as always. Thanks for chiming in. I will give the mirror a shot and as far as funcitons, that is the plan, once we have the building blocks for a rig the plan was to convert them into functions etc as kind of a wrap up. Planning on keeping it basic, FK, IK, some switch and spine options and then have a nice clean simple rig that we can "funcitonify" But most important THANK YOU for sharing!
hmmmm...I was pretty sure I had tried that, so went back and gave it another shot. No luck with the drone, BUT it does work on the dragon. I'll have to figure out the difference
@@livinfreestyle6727 🤔 maybe the orientation of your bones differ to much. Means maybe the bones direction is running in a different direction to the left ones, like main axis is Y instead of X, or Z goes down instead of up, the mirror might not work correctly. But then flipping the axis should fix the issue 🤔🤔🤔 so I would check the orientation of the bones first. Hope this helps to find the issue 🙂
yeah, I haven't looked yet (wrapping the next video), but my guess is that the drone is Y down and the dragon is X....unreal sometimes get funky if it's not X. I'll report back in a bit
ok, crazy enough I went back and it was working. It turns out BOTH had to be X. It's super not what you would htink in a two axis situation, but it seems that the second axis flips the shape properly. Just had to try a few more combos I guess
That construction script is very handy but the only issue I foresee with it is in cases where you want your controller to be offset from the current bone position. This construction script would apply to all bones and you would either have to not do that or add in some exception which I think could become a nightmare really fast.
For anyone struggling at the 18:49 mark notice that he was able to keep the twist bones out of the rig because of the hierarchy. Many characters can have these twist bones parented to the calf, lower arm, thigh etc and if they are apart of the hierarchy they need to be included in the control rig or when you hook it up to the forward solve your controls will go crazy and all over the place.
Thanks for posting the tip. I wonder if this is cuz they are part of the pose process? I will have to look into that. Either way, appreciate the share
This turned out true for me. I'm using the mannequin skeleton exported out to blender, then reimported back into UE with my own character mesh.
When I mirror my twist bones would fly off, breaking the mesh. But if I just make controls for the twist bones and mirror them, choosing X for mirror axis and None for flip, then they work just fine.
I find it interesting comparing IK and FK to real life. I think IK is more representative of what I do in real life. For example, if my hand is resting on the table and I lean to the sides, my hands for the most part stay where they are. It's like my brain is automatically trying to maintain their position in the world.
My partner on the other hand has poor spacial awareness so maybe she runs on FK lol.
Anyways, thanks for the video. :)
That is hilarious. There are pros and cons to both IK and FK and both are helpful in different situations. Which is why its great that we can choose. Thx for the watch and thoughts
Great video. Definitively learned Useful things.🖤
I thought creating 'Item array' will be the fastest one.
Glad it helped!
up up up up up! Super good tuto content!!
Appreciate the watch and comment
Top tier video! This is making a lot of sense now - thank you!
Where do retarget tools fit into this mix or pipeline?
Hopefully someone can find an easier mirror workaround.
Thanks again for starting with foundational concepts. Really helps
Retargeting has a lot of potential meanings. Unreal engine runtime retargeting (although not sure that's a tool), the actual IK retargeter and then source side asset retargeting tools, skeleton retargeting options, etc....but we can take a look at some of those . Glad the videos help
@@livinfreestyle6727 thank you! I’ve only heard of IK retargeter up to this point. I also discovered a control rig addon from Epic at the UE marketplace that I’ll experiment with. Thanks again!
Great job Mr. F!
Thank you, appreciate the encouragement for sure
Great video, solved a lot of my doubts
Great to hear!
Great video, Having unique issues with my custom skeletal mesh i made with a blender model i sculpted. Only the root_ctrl actually moves the skeleton but any specific ctrl doesn't actually move the bones.
That sounds super suspicious. Even if your joints were setup weird I’d still expect the controls to at least move
@@livinfreestyle6727 update, they now move. But they are scrampled to all hell lol. I have a suspicion that its my bone orientation...
@@livinfreestyle6727 Ive joined the discord and posted in the forum-questions with some pictures.
SO GOOD!🪄🪡Thank you!
You're welcome!
Excellent job!
learned a ton from it.
Can you tell me where you learned all of this? Did you get a degree or take paid classes?
I guess you could say I learned it on the job or along the way. My degree was not in art and I can't really think of any paid classes, but various tutorials throughout time as well as the people I have worked with who were gracious enough to share their knowledge
This is cool, are there plans to cover how to make pistons with Control Rig and driven controls in Control Rig?
We could do pistons and yes to driven controls (this could have multiple definitions and I think we are going to go over all the ones you might be talking about)
Looking forward to that Video. Thank you.@@livinfreestyle6727
This is fantastic!!!! On a side note, is there any benefit to do all this in C++?
C++ will generally execute faster, but probably something you only have to worry about depending where your bottlenecks are. (for example if it was always that way then everything would get converted and nobody does that, we all still have blueprints)
I am relatively new to unreal engine having previously used blender. In blender there was an option to preserve the volume of a model. as far as I know, this option does not exist in Unreal engine 5. when I rotate the arm for example, the mesh shrinks into nothing at the midway point. I don't know if this gets covered later in this series but do you know how to stop this from happening? thank you.
Im pretty sure Blender does this with dual quaternion skinning. I don't believe eunreal has that yet and also it does a pretty good job but ultimately we end up using correctives either way. Correctives is something we do need to cover.
When I connect everything up in the forward solve graph the "Get Transform - Bone" node and the "Set Transform - Bone" node both throw errors. The error reads the same on both nodes and says "Array Index (x) out of bounds (count 0)." The "x" represents any number from 1-6. From what I can tell, there is no reason that it wouldn't see the array of controls from the "get all" node. Please let me know what I'm missing! Thanks.
That's very hard to troubleshoot in a UA-cam comment. I would recommend joining the discord and putting your blueprint in the questions forum so we can see what might be going on.
good explanations
👍thx for watching and letting me know
Great channel. Can you do a series on how to rig game characters for unreal please?
Google accurig > install > import >rig > export to fbx> import to unreal and ur done
Have you checked out the live section yet? Depending on what about it you are looking for these might be helpful:
ua-cam.com/users/livetfcBFEWzhkE?feature=share
ua-cam.com/users/livevGqXI1r2dFU?feature=share
ua-cam.com/users/livejMUs08vuEqg?feature=share
@@ryanjdevlin87 accurig has no face rig options
@SuperMontana2008 ya that's separate in iclone I think
Thank you. I wonder now, how do I get the controls to follow the physics asset, so that animators can not accidentally pose incorrectly.
do you mean like the classic overlap tool setup? WHere you have a control that the udnerlyijng is trying to match but the animator can also pose to help "shape" the simulation? or do you actually mean have the physics asset drive the control rig initial pose
Its intimidating. But im glad I stuck around.
you can do it!
You mention "the dragon video" but I can't for the life of me find it, do you have a link?
I'm rigging a snake and am looking for resources for something not quite as humanoid
I believe this is reference to the pets tutorial, but that is just a straight FK chain.
ua-cam.com/users/livevGqXI1r2dFU?feature=share
I can't rotate the bones using Gizmo, only in 'Details > Curent'. Do you perhaps know why this doesn't work?
The only time I've had trouble with this is if I was actually driving the bone and didn't realize it. So do you ahve a control or something that is driving that bone/control?
@@livinfreestyle6727 I think I have solved the problem. I had to use Shift+P to remove the controller from the skeleton hierarchy, and now I can rotate the bones using Gizmo.
@@misterbean967 cool!
非常感谢
不客气!
Hey, could you help me with a problem i'm having with control rig? i made a short video on youtube, the video is in German. but i think you can understand what the problem might be, i can't find a solution for weeks.. and seeing how much knowledge you have, i hope you can help me with a comment under my video or at least point me in the right direction.
Otherwise if you don't understand the problem because of the language I would make another video in English :)
you can reach me through the discord and I"d be happy to check it out. Und vieleicht mein Deutsch gut genug ist das ich das Problem verstehen kann!!
actually, I just saw the video on your link. I'll check it out tonight
OK, I'm not positive, BUT you can see that your upper wing has a different orientation than the lower wing. One joint has 'Y' is back toward the tail and the other 'Y' is toward the head. Essentially depending on the solver its important that upper and lower arm are oriented to the same plane! I actually just covered this in the IK video. It drops on Sunday.
For anyone interested we were able to figure this out and it does in fact appear that the IK solver wants the two joints to be properly aligned in rotation