IKtwobone and BasicIK wonky offset

Why is the IKgoal slightly offset from end joint. I have re-configured this several times and get the same result. I have started an entirely new rig and gotten the same result. I have re-skinned and gotten the same result. What is this and how do I solve it?

I moslty used BasicIK, but have you tried doing the setup for the secondary axis?

From the video everything is set to 0.

I get the same result with basic IK however FABRIK doesn’t do this. The problem with FABRIK of course is the lack of a pole vector. I’ve also played with the secondary but it only makes the problem worse as it typically effects the 2nd joint where the pole vector is centered.

I have however found a work-around that does work but I would like to get to the bottom of why this is happening. My solution was to add a virtual bone and offset it and making it the end joint in the IKchain while applying a rotation constraint to the actual end joint that is being controlled by the IKgoal. It works but there is unnecessary foot motion, however the IK is stable so it comes with some issues.

The pole is probably why you get that. I bet the axis of rotation of the foot is wrong. Do all animations work as intended without the IK?

It’s near impossible to debug this hands off btw.

Things to check in order:
Bone Roll (the X has to be forward? just copy from a working rig).
Pole Location (front vs back of joint changes the interpolation).
Length of IK Chain - a 3 bone chain will do what you are setting and filming as well. so the definition is important.

If you used blender the bone roll is probably really the issue, The import into the engine is likely what screws it up. because Epic had to go and mess with it… I’d suggest you set up to use the legacy importer regardless of this being the issue right now or not.

I’m coming to the same conclusion. Other rigs that I’ve imported work properly without the this issue. I’m importing from Lightwave 3D, however this rig in particular has this issue. I’m thinking that it could be the fact that I went from Zbones in Lightwave to Maya Style Joints and UE simply reads Zbones better without this issue. That is the only difference between the imported rigs that work and the imported rigs that give me this issue.

I have checked and rotated bones in the skeleton editor and I think that it is unsolvable as an import issue. I’ve been having some success with the work-around and I am pushing ahead with that solution. I am also going to try something else and that’s to just re-bone that part of the bone hierarchy in UE as a patch. Perhaps something solid will come out of that experimentation.

Solved!!!
I went back into Lightwave 3D and checked the rig. While I couldn’t tell what was going on in the Joint System, when I converted Z axis bones I could see that the knee joint was offset along the pitch axis by about 3 degrees. After exporting to UE that offset remained but didn’t reveal itself until I ran basic IK or IKTwoBone. I kept over-looking that that joint in the skeleton editor because it looks like it was properly aligned but it wasn’t and I couldn’t tell until I went back to the rig prior to import. Lesson Learned.

1 Like