How to hold a shotgun? (MoBu)

I have a character who supposed to hold a shotgun, so I
made a parent/child constraint which attaches the gun to
the right hand. Then with a similar constraint I attached
the left hand to the forestock of the weapon. Snap, lock,
now it’s holding the gun firmly, great.

But then I realized that the way the left hand holds the
forestock depends on the pose. The weapon can be pushed
against the shoulder, can be held at hips height, aimed at
the ground and so on. One hardwired wrist angle is not
enough.

So I was wondering how to approach this.

I could make separate constraints for each grip style and
blend between them but I’m not sure stuff will look good
when both the old and new constraints are at 50% weight.
(Middle of the crossfade.)

Or perhaps an intermediate null object would help: the null
is constrained to the gun in every way except rotation X
(“forward”). The left hand is constrained to the null. If I
need a different gun-wrist angle then I just rotate the null
around the free X axis.
However I’m not sure what that unconstrained X axis will
do when the gun is moved/rotated around. I’ve seen some
wild spinning in similar ingame constraints.

I’ll continue working on this tomorrow but I though I put it
up here until then. I’d appreciate any pointers.

AUX ctrls here are your friend

each hand position can have an AUX that you can blend between, parent or constrain the aux ctrls to the weapon and your good to go.

*there are a few rig concepts depending on how you want to edit/animate the weapon and if it is captured or not etc… so it can be a deep discussion.

But …AUX for me are the way to go with weapon stuff.

Yeah Aux controllers are the stuff. before them, one of our motion editors had set up a portable constraints in nested folders. It worked, but it wasn’t fun to use. For posings sake don’t forget about handles… they’re great for making multiple objects rotate around various pivots and the like.

*oh and if you add the nodes to a character extension then you can create poses for the extra nodes you have rigged up…

Cool, thanks guys! Let’s see those AUX controllers and extensions…

Sigh, I hate to be daft but I have no idea how to do this.

I made an auxiliary effector for the left hand, pivot-moved
it next to the forestock and constrained to it. Now it is
indeed firmly stuck there but the hand itself is just floating
around in the general vicinity of the aux effector.

The floating looks like bezier curve overshooting because
the positions match up at keyframes. But since I set normal
reach to 0% and aux reach to 100% only the AUX should
affect the hand, and the aux has no keyframes save for
the one at time 0. So I have no idea where the floating could
come from.

And then it occurred to me that I don’t really see the
benefit of these auxiliary controllers. I mean as I increase
the aux reach, the hand moves toward the aux effector.
How is that functionality any different from the basic wrist
effector being constrained to a null? In that setup,
increasing the constraint’s weight would make the hand
move toward the null. Different buttons need to be pushed
but the result seems to be the same. What am I missing
here?

I checked out the help, Brad’s book and the relevant videos
from digital tutors but none of the examples were revelatory.

Okay its something else… even a direct gun-wrist
constraint has the floating issue now. I killed all
animation on the left arm bodypart, still waves around.
If I squint then it’s almost like he’s giving me the finger…

Sweet mother… This is the problem: The RightHandToHead
constraint (attaching the RightWristEffector to the
HeadEffector) is Active and its weight is 0 throughout the
scene.

As soon as I deactivate it, the left hand is fixed.

No, I didn’t screw up the settings, didn’t push random
keys, didn’t plot stuff accidentally, hell I’m not even drunk.
I’ll be soon tho, so I can forget this bug ridden piece of
crap MB.

@constraint weight -0
often what happens is that an attribute will be selected on that your not aware of and if you hit zero key for a layer it will zero the constraint.

It is frustrating when this happens but is more just a funky way the properties are selected/animated.

@AUX vs Constraint-
So AUX ctrls allow you to have many targets and swap between them with out having to key/store poses for one control .

For guns where I use them a bunch is for the ability to use the main wrist control object as a holder of the weapon or a constraint target for the aiming of a gun but then have an AUX ctrl a child of the gun with the hand at 100 reach.

so what you say…

well, in this situation, mobu double solving allows for this to not be a cycle…and you can aim the gun with the orig mocap but have the hand mesh/skeleton locked to the weapon. and then you can also blend away to other targets if the motion is complex with out having to undo the grab pose ro mess with constraint mixing since you can control all the reach values right from the charcter window.

cons- AUX ctrls are another target and don’t allow the master rig to be edited, here if you want the orig motion to be affected and edit over the top of your main control object you have to use constraints and directly effect the wrist control.

I do both depending on what I am needing to do, but for lots of weapon edits I most of the time do the multi pre posed/pre rigged aux ctrls vs. having to create constraints and extra targets and offsets and bla, bla, bla

Thank you for the explanation Brad, AUX it is. Seems that I
need to actually do stuff on the field to get a feel for the
whole thing.

Oh, and the frustrating thing mentioned in my previous post
was the fact that a practically zeroed out constraint affecting
the right hand somehow animated the left hand… this
shouldn’t happen even if I’m an infinite number of monkeys.

“even if I’m an infinite number of monkeys”

see, that is the real time secret, autodesk packs every mobu with an infinite monkey engine allowing the software realtime speed but at the cost of you going bananas!
:slight_smile:

[QUOTE=bclark;8495]see, that is the real time secret, autodesk packs every mobu with an infinite monkey engine allowing the software realtime speed but at the cost of you going bananas!
:)[/QUOTE]

“Infinite Monkey Engine”… ever think of doing a little marketing on the side? :D:

love it, posted it to my mobu blog and also saw on your blog the copytake bug, submiting it to autodesk for you.

Thank you Brad!