Rigify: Putting Constraints on Fingers Problem

I have a Rigify-generated Armature, and I wanted to put Constraints on all of the Fingers so that I could instantly make a Fist with the character.

This seemed like it would be simple: a Copy Scale Constraint on the fingers would do the trick. I placed the Constraint on the Finger, and when I move the controlling Bone, the finger Bone does indeed Scale, but for some reason the Rigify finger does not clench when you’re using a Constraint.

Below is a screencap of the issue. If anybody could explain and, hopefully, provide a solution, that would be great.


It might have something to do with the constraint using pose space instead of world space or local space.

No, that’s not it.

In Rigify, most if not all of the bones you normally manipulate are not deform bones. They are just controllers for the deform bones. If the deform bone(s) in question aren’t using scale data from the controller you’ve constrained, your constraint goes nowhere. Better to move through the layers and find the bones that actually perform the function you want, and put the constraints there, or make those deform bones use the scale data from the controllers you’ve already constrained.

Well he’s putting a copy scale constraint on a controller which controls action constraints on the FK finger bones. (Edit: Wrong because rigify doesn’t use action constraints -see 2 posts down). I think it will work as he wants if he enables the offset setting in the constraint. I think. (Edit: Nope… rigify rig).

I would use action constraints instead. One bone to control all finger and palm controllers keyed for a perfectly posed fist. (Edit: I would if this wasn’t a rigify rig).

-Larry

I was playing around with this a pretty good deal, and just couldn’t get it to operate. It’s kind of a mystery, but I guess having such a complex, multi-tiered Armature is why Rigify is helpful in the first place.

If anybody can suggest any other way of arranging a Rigify Armature for a quick way to clench and un-clench a fist, I’m all ears. (Note again that using Drivers isn’t a solution because then the finger Bones can’t be controlled EXCEPT through the Driver.)

Hey David I apologize if I put you on a wild goose chase with the Action Driver advice. The advice I should’ve given is to use the Pose Library feature. Key and save your fist poses with that then all you have to do is select your hand bones then select a stored pose to key when you want a fist.

I’m sure my advice would’ve worked except for a scripted expression driver used to curl the fingers. I forgot rigify uses this method. I use action constraints in my rigs to curl fingers and everything in IK feet too. These scripted drivers are also why the copy scale constraint will not work.

Next time I’ll test on a rigify rig before advising on the thing.

-Larry