First of all I’m a beginner in IK and can’t get my head wrapped around certain things…
I’m trying to get IK to work on my characters feet and the problem is that if the ground is higher than the feet the IK seems to work somehow but when standing on an edge one foot still stays in the air.
Can it be because I defined the “Hips” Bone as the root bone for my IK? If so what would be the best approach to fix this?
I also noticed that the ik_foot_root symbol is carved out like so:
whereas my root bone is looking like this:
Can someone please explain the difference between the two?
Because in the Mannequine Example there is also a bone called ik_foot_root but it’s located at a different location so I am wondering if this could cause the issue?
Also the foot overbends when stepping next to a higher ground without even standing on it:
First off, I’m glad to see you’re exploring IK in the UE! In terms of information that is helpful for learning how to navigate IK, I’d recommend using some of our official documentation. That particular link starts in version 4.27. But, you can click the dropdown in the top left of the browser to read information from other versions. It does offer quite a lot of information that I think you’d find very helpful from start to finish. I hope this information helps!
I already checked that part of the documentation but it doesn’t cover the ControlRig named “CR_Mannequin_BasicFootIK” which can be found in the ThirdPersonTemplate which is used by the Mannequin?
Also the docs don’t say anything about the difference between and ?
Can you please explain what is the difference between the two?
As far as I can tell the ControlRig provided in the ThirdPersonTemplate is pretty much straight forward but I am wondering what my Mixamo Character does different than the Mannequin in order to understand where these values
come from (Add 5, Add 30, Subtract 50)? Is it because this is the intended offset from the floor to the feet when animating or what could they possibly mean?
I’m not supremely knowledgeable on all of it, but one facet is it does a line trace from somewhere above the foot to somewhere below the foot. If it hits something, the bone is adjusted. So it may help to turn on the debug line for the trace. Beyond a certain distance you wouldn’t want IK to be affective.
Another part (I think) is the way the FullBodyIK limits what the bones can do so they won’t rotate or move beyond a realistic way. Manny has this setup already. If you’re using a mixamo skeleton that may be something you need to create. I’m not sure if Manny’s will work with it.
The IK bones might be a thing too. (I don’t actually understand how those work.) If needing to use a Mixamo skeleton, I’d see if Mixamo Converter has a proper skeleton.
Thank you very much for your reply! Your answer made it clear to me what happens in the FootTrace Function and I actually got the IK to work now with my mixamo character.
So basically the Add 5 + 30 and Subtract 50 defines the linetrace as you said. Now since the foot root of the unreal manny is nearly located at Z:0, this function assumes that the line trace will begin the Z Location where the foot bone is, plus the maximum the characters leg is allowed to be ankled up if the ground is higher.
Same for the subtract but in the opposite direction if the ground is lower.
Thanks to your answer I realized that I had to go from different origins since the root bone (in my case the hips bone, which is the root bone of the feet that gets shipped with mixamo characters) was located at approximately Z:50 so I had to swap the starting position instead of adding 30 to the Z Axis I instead subtracted 50 and subtracted 100 instead of 50 in the second subtract node to get the desired min/max offset respecting my characters root bone.
Therefore the overbending issues got solved and IK seems to be working with these values.
To give an insight here is what my function now looks like: