First-person weapon rig question

I have a rig for arms for first person view and it’s really a pain to animate because I have to move right arm (FK only) that grips the weapon, and I have to adjust left arm to match weapon’s motion.

Is it possible to create a rig where I can move either arm in FK or IK mode, and the weapon with another arm attached to the weapon would follow? (likewise if I move weapon, both arms would follow; also I’d need to be able to adjust left arm independently for reloading animation).

Arms and a weapon should be exported as one model/skeleton (deforming bones for weapon/arms should be one Armature)

If it’s possible, how would I do that?

I would make the arms IK chains rather than FK. This lets you move the hands and the rest of the arms follow as you would expect, if you include the slight bend in the arms in rest pose that is. Then you can make the IK targets Children Of the weapon, by adding a Child Of constraint to the two hand IK target bones with the weapon as the target, or an empty or bone parented to the target in a specific position, this is not strictly necessary, but can help in repositioning the hand on the weapon. The nice thing about Child Of constraints is that they have an influence value, so if you want to take the left hand off the weapon to reload it, you do the following:

  1. Move the weapon to the reload position, as the two hand IK bones have their Child Of constraint influences at 1, they will follow the weapon.
  2. Change the left hand’s IK target bone’s Child Of constraint influence to 0, you can then move the left hand target IK bone to do the reload cycle, leaving the weapon where it is, or moving it as part of the reload cycle.
  3. Move the left hand IK target bone, back to it’s normal position on the weapon and set it’s Child Of influence value back to 1, it will now follow what you do with the weapon once more.

The same can be achieved with FK, but it is far more complicated, and has to be reverse engineered, to keep the arms, hands and weapon in line and attached to each other when they need to be, so I would use IK in this scenario. With an FK scenario, you have to decide on a dominant hand, make the weapon a Child Of that hand and make the other hand a Child Of the weapon. You would then move the dominant hand to move the weapon, which in turn would move the other hand, It gets messy, but it is do-able if you want to go that route. You can still change the influence values of the Child Of constraints as in the IK rig.

You can have multiple Child Of constraints on one object, and keyframe the influences in the timeline, just set a frame, LMB-Click the influence and set a value, then RMB-Click the influence and select “Insert Keyframe”. This enables you to pass an object from hand to hand for example, or throw an knife from the hand of one character into the body of another and have it influenced by the two “parent” objects through the animation, so it travels with the hand to start with - then moves from object to object - you then switch the influence as it leaves the hand and as it enters the second character’s body, it then follows the movement of the second character’s body as it falls to the ground for example.

I hope this makes sense and that you can follow my ramblings!

Cheers, Clock.