I recently dealt with this issue, it involved a two-handed axe attack… and a solution came about rather accidentally…
I got around this issue without using IK on the arms.
Here’s a brief description of how I achieved it…
I created a locator node as a child of one of the hands.
I attached my weapon to that node, and used it to orient and position the weapon relative to the hand.
Thereafter, no matter what animation was happening, the weapon would be glued to that hand…
For two handed attacks, I used animations that suggest both hands become attached to the weapon, but they are simply crafted to appear so - it’s visually plausible, and cheaper / more stable than IK.
“If the hands are oriented and positioned appropriately during animation, and the axe is glued to one of the hands, then the axe will naturally follow the hand to which it is truly attached”
I had some fun swapping out the axe for a teapot, the Urho Fish model, and various other things - the same attack animation, where the hands come together, we swing, then the hands come apart, one attack animation, worked for any number of weapons we could potentially use in a two handed attack.
By all means, try IK, but be warned there are some caveats with respect to our current implementation of IK, including that Scale in the node hierarchy and/or animations causes crazy things to happen to the IK and to its debugdrawing as well.