rotating armature is has strange deformations

I am still quite new to Blender and have by no means mastered it, but I cannot figure out why my armature isn’t working how I think it should. I am animating a Lego person (because I figured it would be nice to learn on a simpler mesh) but every time I rotates his arms, they crumple up at the pivot point. Does anyone know why they are doing this, and/or how to fix it? Thinking that it was just because my weight painting was at different levels, I painted the whole socket at weight level 1.000 and it still did it.

Weight painting something like a Lego man isn’t really necessary, what you can do instead is to separate (if they aren’t already) the mesh into separate parts, so you’d have his head, two legs, two arms, torso, etcetera, then instead of parenting the mesh to the armature via bone heat, or automatic weighting, select each separate piece and just parent that object to the specific bone that will control it, you can do this enabling pose mode on the armature, selecting the mesh object you want, then clicking on the bone, hitting ctrl+p and select ‘parent to bone’.

This should be a lot easier than messing around with weight painting, which even after a few years I still hate, and find a huge pain to deal with.

EDIT: Also with weight painting, it doesn’t matter if you have set that specific group weight to 1.000, if there’s more than one bone in the arm there will be two groups effecting the arm, hence you’ll have two weight groups to weight.

Thanks! The problem was that I had a different one affecting the arm. I didn’t realize that is was a problem to have two bones deform the same vertices.

I am weight painting because I wast him to move more like a person would. I have his arms bending at the elbow, and legs at the knees, and so on. Do you have a better way to get the movement?