Problem with virtual bones

bone_error.jpg

I’m having and issue with a couple of virtual bones. What I’m doing is trying to retarget a model to use the ALS V4 set up. The new model uses the same hierarchy as the stock mannequin with some minor adjustments to accommodate the character size. I got the animations from ALS V4 retargeted to the new skeleton, but I noticed the feet were not being placed correctly. I traced it the problem to a pair of virtual bones used by the Feet IK system. The highlighted bone is VB ik_foot_target_l. It is sourced from the the ik_root bone which is at the origin to the foot_l bone as the target (highlighted by the yellow circle). The animation preview is showing the virtual bone well off from the target. I’m not sure if this is a quirk of the preview or if there something going on with the targeting. Any thoughts?

The above image is from Blender. I exported the retargeted animation from UE4 back into Blender to see what was going on. The problem seems to involve two things: The first is that the leg bones are getting translated applied away from the pelvis. The blue lines are showing the retargeted legs bones from UE4. The black lines are where they should be. As can be seen in the picture, the foot bones are located below the floor which is where the virtual bone is pointing. So the problem is not with the virtual bone, but rather something that went wrong with the retargeting. This brings up the second issue as to why the displaced legs are not showing up as being displaced in the animation preview.

The skeleton was set up to retarget with all the bones set to “Skeleton” except for the IK bones, the root bone, and the pelvis which were set to “Animation”. So I’m confused why the legs (and the clavicles as well) are getting translation applied to them.

1 Like

it looks like your IK bones may be attached to the Root. They should all be separate but still parented, otherwise they won’t move as expected.

Something could have gone wrong during retargeting.
just export the retarget pose with the mesh, delete the mesh, open the actual mesh, and transfer it to the skeleton that was exported / parent and assign the armature properly.
After that check if you can pose the IK bones or make changes in case you cannot.
then re-import the new mesh, and re-import the animation using the new skeleton.
Should fix the issues

I’m not sure I’m understanding your suggestion. The blue bones in the above picture are not IK bones. They are the leg and foot bones. Also, there’s no IK being applied. It’s all forward kinematics.

What looks to be happening is that the retargeting is introducing translation into parts of the skeleton where no translation exists. During the preview and when the game runs these errant translations seem to be ignored. However, the virtual bones do use the translations as part of their solutions, so the virtual bones are not matching up with the skeleton displayed in the preview. This is causing problems for the animation scripts and is likely a bug.

Retargeting will break IK bones. Use the Copy Bone node (before the IK logic) and copy from the feet to the IK bones.

2 Likes