Problem Hands IK Controller for Custom Animations

Hello guys.

I am creating some new custom locomotion animations for the default UT Skeleton. I am using some cool motion capture (exporting from MotionBuilder) to replace ALL the default UT animations (run_fwd_rif, run_fwd_Pis, idle_ready_rif, and so on,) for my game also I am using the default UDK AnimTree.

Just something weird I realized, is that for any of my custom animations, the hands get flipped back (-90 degree) in game. Whenever I see the custom animations inside the animation viewer, they look fine, however in-game it “breaks”.

However whenever I remove the left and right hand IK skeleton nodes from the AnimTree, the animations play fine, however, the hands don’t hold very well the gun (it seems a bit loose from the character hand), which is exactly what the hand ik node does (aswell the gun shoot recoil effect).

Anyone knows how to fix this? I want to have the hand ik working correctly for my custom animations (I am using the default UT skeleton bones).

Cheers.

I know this is a long shot, but it might be a useful troubleshooting step.

If you place a skeletal mesh actor into the map, and place it at different 90-degree positions (on its back, on its side, on its stomach), just floating in the air, is the effect consistent across all rotations? Is the undesired bone rotation relative to the actor, or is it in world space?

Hello dude. Thanks for the answer. Now I think I discovered the problem, as I am still testing. The problem is that in default UT3 Skeleton the hands IK bones are not parented to the hands, however, their animation and position follow exactly the hands position and rotation. Imagine like the hand ik bones were parented to each hand (left and right), then the parent bone`s animation (in case hand) was baked on the hand ik bones, then these ik bones were unparented to the hand while retaining the animation.

What I will do to see if that works, is to change the deafult UT Skeleton by parenting the hand ik bones to the hands for both my character meshes and custom animations to see if that works.

Cheers.

Hello guys, sorry to annoy again :smiley:

I already solved the problem with IK Bones for custom animations on UDK

Here follows a simple guide (for 3dsmax users) on how to create custom characters with custom animations using the default UT/UDK Skeleton.

  • For custom character models, if you are going to model your characters, you need to model them over the UT3_Male template (which can be downloaded from UDN), so you are going to model them on A pose (not T pose) to match (the limbs position) as most as you can the UT3_Male template.

  • If you are getting a ready character (form turbosquid, in example), if it has bones, then just import it to 3dsmax scene UT3_Male, then manually position its bones to match the UT3_Male A Pose. The best you can match is better. If this character does not have bones, you can use Maya LT 2018 quick rigging tool to have a fast working skeleton, export it as fbx to 3dsmax scene UT3_Male, then manually position its bones to match the UT3_Male A Pose.

  • After you have your custom character on the same pose and positioned over UT3_Male character, simply apply a skin wrap modifier on your custom mesh, and add all the UT3_Male body meshes (torso, thighs, boots, head, arms,…) on the skin wrap, change engine to face deformation, leave default settings, mark weight all points, then click on convert to skin, then on your custom model modifier stack select skin wrap, right click and select collapse to (your mesh).

  • Now you will see that your custom character is rigged to the default UT3 Skeleton (yellow objects), however this skeleton is constrained to the UDK Biped, so you can’t move the skeleton, rather, you move the biped, animate it, and the animation is transfered to UT3 Skeleton.

  • So select the biped hand and move it up and down to see some skinning errors (there will be some small errors), do the same for the legs. The more you were able to match the default UT3_Male model and position, less will be the skin errors, however, they will be very easy to fix, just select the paint weights tool and paint the vertices that need to be skinned to their correct bones. For me it just takes some few minutes to fix the skin errors. The tool skin wrap in 3dsmax is one of the best tools for transfering skin between models. It is a very powerful tool! I tried Maya Transfer Skin tool, and also Softimage GATOR tool, but believe, 3dsmax Skin Wrap is the best!

  • Now after rigged your character, you can delete the biped, leaving just your character model and the UT3 Skeleton. Export it for UDK and you are ready to go!

  • Now for animations, I am using Motion Builder, however Maya LT works aswell. You are going to get the UT3 Male model, attach all it’s bodies part (head, torso, arms, legs) making it a single mesh, delete the UT3 Skeleton, and leave just your character and the Biped, however is best to delete aswell the IK bones from the biped (hands and feet). You will add a physique modifier to the UT3_Male Character so you can rig it to the UDK Biped. You will need to adjust the skinning using the physique tools (add vertices to nodes, in example). The process will be very easy, just like the skin wrap. After you have the UT3 Male rigged to the biped (because the original UT3_Male model is rigged to UT Skeleton and not to the biped), you will export as fbx to motion builder, then you need to manually rotate the arms to make it in T position, create a new skeleton definition in HumanIK panel. Here comes the tricky part. Whenever defining your bones (what is left hand, what is spine, and so on), for the hips, you will not select Bip01_Hips, because whenever importing the motion builder animation to 3dsmax, the Bip Hips node does not move, so the hips animation that you get from a mocap file, in example, must be transfered to the biped’s Center of Mass (COM) node, which is the Bip01 (parent of Bip01_Hips). Finish the setup by creating the Control Rigs FK/IK.

  • Now after you have your humanIK character setup in motion builder (or maya), you are ready to rock! Just merge some mocap animation in motion builder (I have a kind of ready setup for many characters like 3dsmax Biped, Real Illusions BVH Skeleton, TrueBones Skeleton which the correct skeleton definitions for HumanIK) then retarget these animations to our UDK Biped Skeleton. Plot the animation to control rigs, create a new animation layer, adjust some things in the animation (like some bones rotation), then plot the animation to the skeleton, then on the humanIK side panel select the UDK Biped Character and click on save character animation (be sure to select the correct take).

  • Now here comes the secret aswell to have the IK bones move correctly on the animation, regardless the fact that these bones are not parented to the hands or feet. You will get the original UT3_Male template, then just load the character animation you saved right before on HumanIK Panel. Now you will see that we imported the animation data and it got applied to the UDK Biped, and that the UT3 Skeleton (yellow objects) moves accompainning the UDK Biped, and that the UT3 Skeleton IK Bones aswell move correctly.

  • Last step is just select all the UT3 Skeleton objects and export select as FBX, then Import this animation to UDK. Now here we have all the custom animation working with fully IK bones setup (wee did keep the UDK Skeleton Animation Structure).

I hope this info can be usefull to other people here!!!

Cheers!!!