Control Rig #3: Basic IK Leg (Inverse Kinematics ) | Unreal Engine Tutorial

  Рет қаралды 5,496

Ask A Dev

Ask A Dev

Күн бұрын

In this Unreal Engine tutorial we are going to be setting up Basic IK using control rig. We will also take a look at how pole vectors work and 2 methods for placing them.
🎓 Inverse Kinematics
🎓 Basic IK
🎓 Pole Vector
Truly thankful for supporting the channel. Besides Supers and patreon, Tips are also great:
www.paypal.com/donate/?hosted...
Join our Patreon to vote for upcoming topics, download tutorial content, as well as early access to tutorials and live dev streams.
/ askadev
🔗 Join our discord server for questions and community:
/ discord
🌟 This tutorial strives to offers insights, advice, and techniques for creating with Unreal Engine and Blueprints. Don't miss this chance to level up 🚀 your development skills, get your burning questions 🤔 answered, and connect with our supportive community! 🌐
#UnrealEngine #Blueprints #GameDevelopment #GameDesign #userinterface #UnrealEngineTutorial #gamedev #virtualproduction #unrealengine5tutorial #controlrig
0:00:00 Intro
0:00:58 What is Inverse Kinematics
0:02:25 Control Rig Setup
0:05:49 Construction Event
0:08:20 IK Solver?
0:09:19 COG_Ctrl
0:11:14 Basic IK Setup
0:13:35 Knee & Pole Vector
0:15:56 Joint Orient for PV
0:19:03 Pole Vector Method 1
0:27:21 Pole Vector Method 2
0:34:57 Mirror Side Considerations
0:37:20 - Wrap Up

Пікірлер: 79
@ismaeldelgado9805
@ismaeldelgado9805 4 ай бұрын
the best teacher on unreal engine hands down, the ability to explain these topics in such understandable terms, it really shows you comprehend these things. Please continue your teachings thanks again dev kev
@livinfreestyle6727
@livinfreestyle6727 4 ай бұрын
I totally laughed at "dev kev." Thanks for that. Also thanks for dropping the comment and watching!
@bestpetzone
@bestpetzone Ай бұрын
Kevin, Unreal is a beast, thanks for these as always. You've been fundamental for us in learning this
@livinfreestyle6727
@livinfreestyle6727 Ай бұрын
Glad you think so!
@chomnansaedan4788
@chomnansaedan4788 3 ай бұрын
What an underrated channel. Thank you for your teachings.
@livinfreestyle6727
@livinfreestyle6727 3 ай бұрын
Thanks for the thought and the watch. I do think people are starting to find us, albeit slowly :)
@user-kb6mk8jp2i
@user-kb6mk8jp2i 3 ай бұрын
@@livinfreestyle6727 Indeed under rated. Most tutorials are youtubers with clickbaity marketing efforts, it's hard to find actual professionals who will put the time to share their knowlodge!
@livinfreestyle6727
@livinfreestyle6727 3 ай бұрын
@@user-kb6mk8jp2i Thanks for the feedback!
@Roger_Ridley
@Roger_Ridley 4 ай бұрын
Take more of my money Kevin!! I love these lessons! Great job!! I always struggled a bit with IK in control rig and now know why: )TY!
@livinfreestyle6727
@livinfreestyle6727 4 ай бұрын
Glad that these are so impactful and helpful....can't wait til you all see the upcoming prototype game vid
@StefanieAjhar
@StefanieAjhar 2 ай бұрын
I have been struggling with control rig for a while now and your videos have been incredibly helpful. This one in particular made me subscribe. Thank you so much for sharing your time and skills to explain how things work (your dive into Maya to go through what is happening was very appreciated). I'm looking forward to the confidence I'll have with Control Rig at the end of this playlist with this growing toolkit you're teaching the community.
@livinfreestyle6727
@livinfreestyle6727 2 ай бұрын
Glad they help, but there are more coming. I think I have 3 more already recorded with several more to do that are going to be released over the coming weeks. Thx for watching and the sub
@TheAntonio322
@TheAntonio322 4 ай бұрын
Your explanation of pole vectors is what ive been looking for quite a few months now I followed a procedural animation course on Udemy and the way he had us set it up had are characters walking like there about to go take a dump all because it wasn't covered to this extent thank you for making this series!
@livinfreestyle6727
@livinfreestyle6727 4 ай бұрын
You're welcome. I'm glad this version of an explanation helped so much
@droklove7909
@droklove7909 Ай бұрын
this was such an unusual concept to wrap my head around before this video. thanks for teaching
@livinfreestyle6727
@livinfreestyle6727 Ай бұрын
you're welcome!
@darabjakab
@darabjakab Ай бұрын
Incredible stuff, thank you for doing this!
@livinfreestyle6727
@livinfreestyle6727 Ай бұрын
No problem!
@KittehBit
@KittehBit Ай бұрын
Excellent as always!
@livinfreestyle6727
@livinfreestyle6727 Ай бұрын
👍
@davidshapirofitnessmotivat8994
@davidshapirofitnessmotivat8994 25 күн бұрын
The course is very good, thank you
@livinfreestyle6727
@livinfreestyle6727 25 күн бұрын
No problem. Thx for watching
@Kraheed
@Kraheed 5 ай бұрын
You're videos have been so helpful thank you
@livinfreestyle6727
@livinfreestyle6727 5 ай бұрын
You are very welcome. Thanks for letting me know and watching
@jdenisb1085
@jdenisb1085 Ай бұрын
Thank you very much!
@livinfreestyle6727
@livinfreestyle6727 Ай бұрын
You're welcome!
@patrickcoan3139
@patrickcoan3139 3 ай бұрын
Thanks for putting all this together, Kevin. Great format. Suggesting that a deeper dive into the Primary and Secondary Axis is recorded, explaining that the XYZ orientation of the 1st joint corresponds to the 1,0,-1 range. Likewise the Secondary corresponds to the Pole Vector orientation based on 2nd joint. I got to the bottom of this after an hour or so, as I am not using Manny but my own rig - so the number's meaning will be really helpful for ongoing work. Looking forward to devouring the rest of your content!
@livinfreestyle6727
@livinfreestyle6727 3 ай бұрын
I think this is a great call out. I got a little swamped with some of the other vids so hopefully picking back up on Control Rig (next one should be backward solve). After that we're moving fully to modular rig and testing etc plus new stuff (quadlegs, procedural etc....soooooo much to do). Thanks for posting and helping out
@patrickcoan3139
@patrickcoan3139 3 ай бұрын
Absolutely, thank you for the work you're doing.
@gavinxu1622
@gavinxu1622 2 ай бұрын
Looking forward to a AskDev tutoral on the explanations of primary and secondary axis setting!
@livinfreestyle6727
@livinfreestyle6727 2 ай бұрын
@@gavinxu1622 Thats actually probably a good call out. I'll add that one to the control leg list. Thx for the watch and dropping comments
@denischetyrin6980
@denischetyrin6980 2 ай бұрын
tnx a lot for the tutorials
@livinfreestyle6727
@livinfreestyle6727 2 ай бұрын
You're welcome! More control rig stuff coming this weekend and beyond
@hotsauce7124
@hotsauce7124 5 ай бұрын
Thank you
@livinfreestyle6727
@livinfreestyle6727 5 ай бұрын
You're welcome
@Exsulator2
@Exsulator2 5 ай бұрын
Thanks these videos are great, you are quickly becoming my favorite unreal tutorial source! Just a tad sad that you skipped explaining the "Rotate Vector", as even a small explanation of20 sec would make it easier to follow, without needing to pause and go to other videos (30:46). There is an explanation but it kind of hard to follow what the node really is for. e.g. "rotating" but we're not really rotating as far as I understand, but rather offsetting translation? yet you say "lets rotate". So the node remains confusing
@livinfreestyle6727
@livinfreestyle6727 5 ай бұрын
We are actually rotating. So imagine we create a vector at the origin. Its pointing straight ahead and it's 50 units long. You can think of it like a giant arrow pointing forward. We are taking that arrow and "rotating" it to match the same rotation of the calf joint. So now it's at the origin but points in the same direction as the rotations of the knee. Then we have to translate it to be in the same position as the calf so we add the calf position and now the arrow points in the direction of the rotation at the calf joint and it starts at the position of the calf joint and the arrow tip finishes in front of the knee in space depending on your calf rotation. Hope that helps and I'll try to balance explanations vs references to other videos and still keeping video lengths reasonable. THanks for letting me know
@Exsulator2
@Exsulator2 5 ай бұрын
Thanks a lot. Maybe I'm just stupid here, I think what got me misunderstanding is that I didn't quite grasph what "creating" means in this case, it seemed we took an existing pivot and just, offset it a bit, so what is "created" is what I couldn't figure out about this node. Or is that just overthinking it? @@livinfreestyle6727
@livinfreestyle6727
@livinfreestyle6727 5 ай бұрын
I think its fair feedback (not stupid at all). The Rotate Vector node kind of masks the "creation" of the vector because we type it in the bottom part. Thats the vector creating part. So it might have been clearer if I actually MADE a separate vector that we connected in
@unrealdevop
@unrealdevop 24 күн бұрын
This was a very well done video. I really like your approach to it and it makes sense. I will say though that there is a slight movement on the knee inwards when I connect the forward solver....I've seen this on their own Template Control Rigs too though, maybe I missed something?
@livinfreestyle6727
@livinfreestyle6727 24 күн бұрын
I think we go deeper into the knee stuff in the advance leg. We're still learning about control rig stuff and I do believe we will find lots of things that we need to fix as we start animating with all this stuff as well (I find lots of strange things when using the third person one too). We'll keep learning and figuring it out though!
@unrealdevop
@unrealdevop 24 күн бұрын
@@livinfreestyle6727 Yeah I appreciate the effort for sure. Glad to have someone in the community diving into the control rig, it's really confusing. I was attempting to find a way around the Offset Root Bone Node problem in the Motion Matching Sample to develop a Foot Locking System. Traditional methods based on the Mesh don't work. I think I'm going to need a really strong background in vector math to pull it off though. I tried doing it the ALS way and The feet, because they are in component space will rotate when you move slightly in another direction....inverting their placement.....when I try to make it relative to the root bone the feet spin like helicopter blades lol. I was hoping I could simply pass in the world position of them into the control rig since the IK Solver has a Tooltip saying it's in World Space, but when the root moves the feet move with it, even when jumping it maintains a relative offset from the root.....so idk, I'm at a loss right now, I'll have to re-think my approach.
@lukethedukea380
@lukethedukea380 Ай бұрын
love the tutorial and how in depth you go into the rig workflow, i have a question tho, when you fixed the knee problem i did the same with a custom model from BigMediumSmall and his leg just turned to spaghetti and right now clueless how to fix it :(
@livinfreestyle6727
@livinfreestyle6727 Ай бұрын
Take a look at your joint orientations. My guess is they are different than the default characters. So you need to find the proper primary and secondary axis so your legs don't flip out
@RiggingDojo
@RiggingDojo 5 ай бұрын
100 extra points for the horse stance comment :) HAHA another great video! 🥷
@livinfreestyle6727
@livinfreestyle6727 5 ай бұрын
I love extra credit points!
@ConceptFluff
@ConceptFluff 2 ай бұрын
These videos have been very helpful for someone who doesn't have a background in this space, thanks! I kind of got lost in some spots, when it comes to adding an IK into the original FK controls there was some issues I think (I see in future videos you change the name and add a Boolean). when I added a basic IK into an arm it flipped out a bit, is that because of bone orientations? I used the unreal auto orientate tool, so the X axis is facing down the bone but the Y and Z sometimes are different, does that effect IK's?
@livinfreestyle6727
@livinfreestyle6727 2 ай бұрын
It absolutely can affect the IKs. Both in what your axis settings need to be, but also it is important that the orientation of the joints for the 2 bone limb are "planar" basically thigh, knee, and foot should be exactly the same orientation.
@ddfzhh
@ddfzhh 4 ай бұрын
Hi Sir, thanks for the tutorial! Got a question, where is the video that you mentioned about the basics of calculating vectors? I searched "vectors" in your channel but didn't find it.
@livinfreestyle6727
@livinfreestyle6727 4 ай бұрын
See if this helps UE Blueprint Fundamentals | Class #2-2 | Vectors kzfaq.info/get/bejne/bJ6aZ7uJu92YdZs.html
@LookItsCollin
@LookItsCollin Ай бұрын
If your knees are snapping when you plug in the forward solver you might be using a custom rig like I am. This is happening because the skeleton itself was designed with a bend in the knee that does not point forward relative to the calf. So naturally when you try to have your IK rig point forward relative to the calf, they'll be out of sync. If you can't fix the skeleton itself in something like blender then I don't think there's anything that can be done about this unfortunately.
@livinfreestyle6727
@livinfreestyle6727 Ай бұрын
From the few samples i've done the IK Node doesn't like it if the knees aren't in a plane, but there is something you could do....You could use control rig to create your own IK chain that is properly oriented. Then you would constrain your joints to the the IK chain
@LookItsCollin
@LookItsCollin Ай бұрын
@@livinfreestyle6727 That seems like it would work but I just went back and re-posed my skeleton to be on a plane. Wasn't until this video that it occurred to me that IK really should not be snapping my legs when in the idle pose. This content is awesome
@livinfreestyle6727
@livinfreestyle6727 Ай бұрын
@@LookItsCollin glad you think so. Thanks for watching and commenting
@fscreen78
@fscreen78 18 күн бұрын
What is the purpose of the [ Pole Vector Space ] parameter in Basic IK?
@livinfreestyle6727
@livinfreestyle6727 18 күн бұрын
It tells unreal what the pole vector values are relative to
@fscreen78
@fscreen78 18 күн бұрын
@@livinfreestyle6727 I set [ Pole Vector Space ] to [ Type : Bone / Name : calf_l ] and set the pole vector to [0.0, 50.0, 0.0] But it looks processed as a global space. I'm confused... :(
@misterbean967
@misterbean967 2 ай бұрын
Where can I find documentation on Basic IK? There is nothing about it in the Unreal Engine documentation.
@livinfreestyle6727
@livinfreestyle6727 2 ай бұрын
what kind of documentation?
@misterbean967
@misterbean967 2 ай бұрын
@@livinfreestyle6727 In the Unreal Engine Documentation. There are examples there with ''Full Body IK' but I didn't find anything about 'Basic IK'.
@paulamoisuc833
@paulamoisuc833 Ай бұрын
Hi all. can someone explain how to apply this setup for the right leg?
@livinfreestyle6727
@livinfreestyle6727 Ай бұрын
It would be the same setup, but you would flip the axis and facing to be the opposite sign (ie -1)
@fscreen78
@fscreen78 18 күн бұрын
It means, Primary Axis have to be [ X : 1.0 | Y : 0.0 | Z : 0.0 ] and Secondary Axis have to be [ X : 0.0 | Y : -1.0 | Z : 0.0 ]. If you check your character's legs bone axis, then you will know why.
@hotsauce7124
@hotsauce7124 5 ай бұрын
Would be interesting to use this method with a character exported from Blender. Does a rig from Blender introduce different issues to solve?
@livinfreestyle6727
@livinfreestyle6727 5 ай бұрын
Blender exports still create fbx files and your basic joints, geometry and skin, so I can't think of any different issues off the top of my head
@hotsauce7124
@hotsauce7124 5 ай бұрын
@@livinfreestyle6727 does Blender have different joint axis, are the joints axis different from Maya?
@livinfreestyle6727
@livinfreestyle6727 5 ай бұрын
I am not a blender expert, but maybe it's in here: ondemand.riggingdojo.com/MayaToBlender if you have trouble finding the answer, let me know and I can dig in
@zehailiu7825
@zehailiu7825 2 ай бұрын
@@hotsauce7124 I'm doing this and currently having a problem where the thigh twist and calf twist won't point in the same direction as the main thigh and calf bones. Edit: In my case I had to use 0, 1, 0 and 0,0,0 for primary and secondary axis, on the left leg. On the right leg, it has to be 0,-1,0 for primary.
@hotsauce7124
@hotsauce7124 2 ай бұрын
@@zehailiu7825 Thank you!
@shingAMarie
@shingAMarie 5 ай бұрын
I was wondering you if I could message a tutorial request. I’m not sure if I could email you or not but I don’t know what your email is. But basically I want guidance on how to have an enemy character who is patrolling using the appropriate navigation have it so that if I punch him he will have a ragdoll hit reaction, and then, after that is finished, he will just keep walking again. Basically, the general gist is to have whatever the enemy is doing to be interrupted temporarily by a hit like a punch or a kick and then have them resume their activity that they were doing before that is it possible you could guide me if there already is a tutorial like that or not or if you could do one yourself thank you . by the way, would you consider doing private tutoring sessions for a price?
@livinfreestyle6727
@livinfreestyle6727 5 ай бұрын
Seems like you are basically talking about "hit reacts" I can put that on the list of tutorial requests for sure.
@shingAMarie
@shingAMarie 5 ай бұрын
@@livinfreestyle6727 yes but I want it so that a enemy character can have full pond, sensing capabilities and walk around the map and be able to be hit with idle reaction and then just keep going after the reaction finishes if that makes sense. by the way, would you do private tutoring sessions for a fee?
@livinfreestyle6727
@livinfreestyle6727 5 ай бұрын
I think it makes sense. Basically they just take a hit and keep going. I do have a limited number of private tutoring spots on Patreon: www.patreon.com/ASKaDEV It would be the "Insatiable Mind" Membership (click the arrow right one time)
@CruelCrusader90
@CruelCrusader90 3 ай бұрын
if you're following along and at 10:08 your mannequin doesnt yeet itself like in the video. you tried to get ahead and checked the "Initial" box. that is the mistake you made. you're welcome.
@livinfreestyle6727
@livinfreestyle6727 3 ай бұрын
Took me a second to figure this out. Thanks for helping out!
@CruelCrusader90
@CruelCrusader90 3 ай бұрын
​@@livinfreestyle6727 no, thank you for making these videos. i paused the video a few seconds before that timestamp thinking it was the same as above. had a moment of panic when my mannequin didn't rotate. 😅
@livinfreestyle6727
@livinfreestyle6727 3 ай бұрын
you're welcome. I do have a few more Control Rig videos coming so keep an eye out
Control Rig #4:  Intro Constraints   |   Unreal Engine Tutorial
21:41
Control Rig #5:  The Reverse Foot   |   Unreal Engine Tutorial
25:22
Ask A Dev
Рет қаралды 2,7 М.
What it feels like cleaning up after a toddler.
00:40
Daniel LaBelle
Рет қаралды 93 МЛН
Smart Sigma Kid #funny #sigma #memes
00:26
CRAZY GREAPA
Рет қаралды 10 МЛН
IQ Level: 10000
00:10
Younes Zarou
Рет қаралды 12 МЛН
Stop Killing Games - 2
8:04
Pirate Software
Рет қаралды 254 М.
Make your animations dynamic using Control Rig
17:38
Lincoln Margison - Game Development
Рет қаралды 16 М.
Control Rig #7: FK/IK Switch & Snap   |   Unreal Engine Tutorial
42:10
Control Rig #2:  Forward Kinematics   |   Unreal Engine Tutorial
35:08
Unreal Engine Materials in 6 Levels of Complexity
44:12
pwnisher
Рет қаралды 198 М.
Unreal Engine 5 Tutorial -  Control Rig Part 2: Types of IK
14:14
What it feels like cleaning up after a toddler.
00:40
Daniel LaBelle
Рет қаралды 93 МЛН