Creating Robot Joint

Hello everyone!

I have a problem with creating a joint for a robot arm.
Since I am new to moving parts in modeling programs for games (my background involves CAD-software), I’m getting kind of stuck with, I think, a simple newbie question.

I searched in a lot of tutorials and tried a lot to let two meshes move with a bone. Some said I should name the bone the same as the vertices, some said I should constraint the mesh to the armature. I also checked with the Weight Paint, and the parts that should move were red, but just wouldn’t move! In the end, it all didn’t work.

I don’t know what I am doing wrong. I really need some help.
I attached a picture of how my arm should move, and the .blend file itself.
I hope someone can help me.

A lot of thanks in advance!
Kind regards,

Newbie Jos =)

My version of blender is 2.49b.

EDIT:
Well, finally I got it working! Always when you give up and end clueless on a forum, the next 10 minutes you get it fixxed. I used CTRL+P -> Armature -> Create from bone heat to connect meshes to the bones.
Only problem left: My cylinder becomes oval when I rotate… But maybe I can fix that myself :stuck_out_tongue:

Attachments


armV5movetest.blend (182 KB)

Your circle becomes an oval because you selected the bone heat option.
You could alternately add an armature modifier to the object and plug in the name of the armature object. Make sure to turn off envelopes and just use vert groups.

I wouldn’t recommend bone heat for a robot. Personally, I wouldn’t use vertex groups at all, just Parent To constraints on each part, but that’s a matter of personal taste and style.

But the real problem here, explaining the deformation of the cylinder, is that you have object level scaling both on some of the mesh parts (an easy mistake to make) and on the Armature itself (which really should never happen). Do a Control-A: ‘Apply Scale and Rotation to ObData’ on everything before hooking up your armature and mesh. That applies whether you use an Armature modifier with vertex groups or just use constraints.

Best wishes,
Matthew