How to rig multiple objects?

I’m modelling a Mamod steam tractor which has several parts to it such as a piston that I plan to rig up. But how do I go about parenting it all to one controller? I’m not at the rigging stage yet but just want to know how to go about doing it.

Would I have to go about parenting everything to one controller and while I know how to make the piston work as I’ve already rigged up the piston on it’s own as a test but how would I make that follow the rest of the body while all being controlled with one controller to move the whole model?

The short answer is yes, your going to have a ‘Root’ bone, all other bones will lead back to that in some way (parenting or copy constraints). The root bone will act to move the whole tractor around, when your ready just post back or PM me and I will give you a hand.

Cheers the reply. I haven’t actually rigged the piston with bones. I’ve used empties and track to constraints. I did start off using bones but I couldn’t get the rig to work as if you’ve seen a Mamod steam tractor work the cylinder pivots up and down so I need the cylinder to point at the cam (or where the piston attaches to the cam) and then the piston to point to the cylinder. I couldn’t get this to work with bones so I used empties instead and works fine.

I think I’ve figured out how to parent everything I did a quick test by using another empty as the main controller and then parented the other empties in the rig to this main one and it works just fine. I’ll let you know if I run into any issues when I try it on the actual model. :slight_smile:

Hey, I try not to use Emptys for rigging - you can not ‘clear’ their transforms without them ending up back at home (0.0,0) so that means you have to remember where their position is, it’s just a pain in the arse. :frowning_face:
So your set-up will look similar to this pic, you should be able to get a good idea from it, the only addition to this would be to duplicate the ‘Cylinder’ bone - parent it to the original (Cylinder bone) WITH OUT ‘Inherent Scale’. That way you can parent your mesh object to it and not get any stretching. Make sure your duplicate ‘Cylinder’ bone is not part of the IK chain. Note how the bones in the IK chain have certain axis locked and the ‘Cylinder’ bone is set to stretch, that should get you what you need, post back if you have any questions or you want a file. :smile:
:bone: :male_detective:

There are other reasons to avoid empties (and a few reasons to avoid bones, for that matter, it’s kind of silly how they’re all handled differently internally) but this particular problem is solveable. Select empty, ctrl a -> apply all transforms to deltas. Now you can alt-g, alt-r, alt-s to your heart’s content.

It’s been around (and working) a long time. 2.78 at least.

Wouldn’t be surprised if there are times it doesn’t play nicely with inverses from parents, but that’s an issue with the inverses, which aren’t really updated/read properly in a lot of cases.