I´ve just finished my best rig so far. It´s a generic puppet called “Otto”, and it has features like squash´n´stretch and bendable arms and legs. This last one was inspired by Bassam Kurdali´s lecture on this last Blender Conference.
I believe it´s use is very straightforward, so there´s no tuts on him for now, but depending on the feedback I may make one.
If you see any problems or have any questions/suggestions, just tell me. =D
Cheers!
corrections on version 1.1:- Added action constraints in the fingers instead of IK;
Added “floor” bone;
Corrected eyes (tracking and squash’n’stretch);
corrections on version 1.2:- now it works with the new “walkcycle modifier”, CVS version;
correction on version 1.3:- pose flipping was pretty weird. Now it´s ok;
changes on version 1.4:- Eyebrows bones now follow the head bone correctly;
Right, Center and Left bones now have different color;
Text on 3D view for you to know the version you´ve just downloaded;
correction on version 1.5:- Corrections on the bend solution, that is simpler and better now. The old one had some issues with the rotation of the root bone.
correction on version 1.6:- Fixed parenting issue on his eyes + eyelids to the armature, thanks to Mike_S point.
Fantastic job! The rig is nicely designed and I found it easy to work with. My only gripe is that the shoulder + hip joints stretch back into his body if you stretch the arms and the legs too far. But, thats a minor detail, overall, it looks like you put a lot of work into him and did a good job. 5 stars from me.
Excellent work! I’ve only just begun to take him apart, but so far I’m impressed. There are a number of impressive solutions. The bending is very interesting. Cool use of lattices.
I do have 1 gripe though. The targetless IK constraints in the fingers cause problems for animation. You should give them targets.
Thanks for sharing ! I’m always looking for rigs, one of these days maybe I’ll even create one myself.
I’m not quite sure how you’ve setup the lattices, but there is a problem with the rig when trying to use it with the new NLA-walk feautures in CVS (2.43). I’ll post it to the bug tracker, see what Ton has to say.
It seems to me to possibly be a parentng issue, with the lattices being parented to the armature in Object mode. I tried parenting them to the armature bones but that didn’t help.
Maybe I’m doing something wrong, but the only way I can get targetless IK to work for animation is to key all of the bones in the chain. I’d rather just have straight FK if I’ve got to key everything anyways.
Ok, thanks, ya I just tried it and you’re right that all the bones need to be keyed for the no-target IK. Something else I didn’t know about the armature / animation system.
I suppose that’s only an issue if you don’t want to select all bones and key them … i.e… for mixing actions.
An easy work around is to use bone layers, and then selecting all bones while the desired bone layer is displayed, and therefore only those bones will be keyed.
Or … it’s no big deal to add IK target bones to the rig
Well sketchy, It’s a strong point this one of the target bones on the fingers. I’ll add them and update Otto very soon. Thanks a lot for this tip and also for sharing Ludwig (I learned a lot from it)
Mike_S, does this problem happen only with the new feature of the CVS version or you’ve noted this on other situations? I didn’t test it with CVS, so I’ll download it now and see if I can fix it. =D
The problem with the CVS walk feature is that you’ve parented the Lattice’s to the armature in OBJECT mode. If you parent each Lattice to a specific bone in POSE mode (CTR-P make parent to Bone), the Lattices’s will “follow” along with the armature and the problem is solved. E.G., I parented the latticeBraco.L lattice to the braco.L bone (bicep).
Also, you currently have each “hook” copying a location of a bone, with that bone in turn copying a location of the control bone. I don’t know what the advantage of that is, why not just have the hook copying the locatoin of the control bone?
Well… my first try with the lattices was exactly like that. I’ve parented the lattice to one individual bone, and the hooks copying the locations of another bone. But I had some problems with this:
The bones get deformed in stretch, so if I parent the lattice to one bone, it will also get deformed, which is undesirable, since the modifier stack acting on the Otto mesh have the lattice modifiers first than the armature. This way we’d have an armature that deforms a lattice that deforms a mesh, and this complex relationship gave me pretty strange results. :o
The best way I found is to have the lattices static, hidden in the last layer. They actually don’t need to follow the individual bones. I’ve just parented the lattices to the Object Armature for them to follow it if moved in Object mode.
the hooks have a copy location constraint to a bone, who has another copy location to another bone. This is strange, at first, but since the lattices were static, I needed a “local” copy location. I don’t know if it is possible to apply the “local” copy location to an object that is not a bone. If it is, I couldn’t figure out how…
Well… I really don’t know if it’s the best way to do it, but it seemed to work fine, until the CVS new feature… hahaha =D
Actually I didn’t downloaded the CVS version to test the rig yet. I would like to know if it happens only with this feature or in other occasions too.
Parenting the lattices to the arms/legs bones give unexpected results, as I stated in the previous post.
So… I wrote that post and went to sleep.
Today when I woke up: TA DAAAAAHH!! I´ve realized the obvious:
Parenting the lattices to a deforming bone is bad. so, I´ve parented them to a non-deforming and non-moving one! duh!
Well… It´s updated to v1.2 now, for compliance to the CVS. I´ve downloaded and tested with this new feature and works fine. The link remains in the first post.
It’s really nice, but I wonder if I’m the only one having problems copy/mirroring the poses? The feet positions are mirroring right, but the joint targets, the lattice controllers, and the hands don’t seem to be mirroring the way I expect them to… I could be doing something wrong.
The left pose is the original pose, I selected the keyed bones (only the bones with keys), copied them to the clipboard, and reverse pasted them a few frames later, yielding the pose on the right…