Unreal Weapon Attachment with Dependent Hand Positions


Howdy everyone,

I have been working on shooters in Unreal for a while now, but I’m trying to rework the way I do weapon/character animations.

In the past I’ve always had the weapon be a part of the character’s skeleton asset. This way the animations of the character holding the weapon would always line up and weapons could have complex animations of their own applied as additive blends.

Combined Character/Weapon Skeleton + Main Character Animation + Additive Weapon Animation = Plays Correctly

The issue with this method is that it requires separate animations per weapon to get the arm/hand positions correct. I need character animations like run_shotgun.fbx, run_pistol_fbx, run_watergun.fbx and so on. I’d rather apply my weapon the the character and in doing so have Unreal automate the hand positions. This is an easy process in other programs like Max and Maya with a touch of coding. Logic somewhat like the following:

If (weapon == shotgun) do (position the hands like this)

My current attempt has been to add hand skeletons to the weapon asset. I can use Unreal’s bone IKs to match the position of my character’s hands to that of the weapon’s hands. The rotation, however, never follows. I just want the character’s hands to snap to the positions/rotations of the weapon’s hands.

Am I thinking about this wrong? Is it a crazy idea to begin with? Any thoughts are appreciated.