I’d like feedback on an animation of how the shoulder deforms as the arm rotates. The animation is at https://youtu.be/x0iQb_yJZNc . It first shows the arm rotating up and down from the front, then from the back, then repeats the animation with a close up view of the shoulder.
I’d like to know how decent the shoulder looks and how I can improve it. I’m not really concerned about looking identical to an actual shoulder; just realistic enough that it would not appear wrong to an audience.
I think later I’ll make another animation where the shoulder rotates on multiple axes so it’s not just up and down.
I made another animation with the figure rotating the arm on multiple axes at https://youtu.be/4JnUgLG_qM8 . I notice some jerking in the arm at the beginning of each cycle, and on the close-up view of the shoulder from the back there is folding of the mesh at the top of the arm/bottom of shoulder as the arm moves down.
On another thread someone suggested using transform constraints for issues related to shoulder deformation (because different Eulers can represent the same rotation). I could try modifying my rig to do that and it might fix the jerking of the arms. The YZX Eulers of (0,0,90) and (90,-90,-90) on the upper arm seem to produce identical rotations and I think that is related to the arm jerking.
It looks okay enough from the 0-45 degree angle and a little when the arms are all the way up (like 170 degrees), but after that point, it needs improvement, especially when the arms are extended in a T pose. To me, it seems like the problem is that the arm’s pivot point is way too low in the arm when it should be a lot closer to where the shoulder and the torso join together. Perhaps if you show pictures of your blend with the armature so I can take a closer look at where the joints are located. It would also help if you studied a little more on human anatomy to understand how and why certain muscles deform the way they do.
I attached screenshots of my armature with the mesh in wireframe. The mesh is in a T pose when there are not armature deformations. I have a driver on the upper arm that changes its location based on its rotation, so it moves away from the body when the arm is rotated to the side, and moves closer to the head when it is raised over the head. This is so the arm is not out to the side when it is raised over the head and does not intersect the body when it is down to the side. I previously started a thread about this topic at https://blenderartists.org/forum/showthread.php?408349-Arm-rotation-180-degrees-Is-the-arm-out-to-the-side-or-over-the-shoulder .
It would also help if you studied a little more on human anatomy to understand how and why certain muscles deform the way they do.
I have a book on anatomy for artists (written by Stephen Rogers Peck) but haven’t gotten around to reading it yet.
I think you should understand first the physiology of the shoulder, there are 3 bones, and then there is the chest bones. you need to have them in some way represented. (I can not make proper rigs, but I just talk from a physiology point of view).
I notice in that video (at 6:20 but also right at the beginning) that the arm starts at the side of the body, then when it rotates to about 45 degrees, the collar bone starts to rotate up. The collar bone seems to rotate to 30 degrees by the time the arm rotates 120 degrees. After 120 degrees, the humerus twists as the arm rotates to its maximum of 165 degrees. I can’t tell how much the humerus twists but it looks like it gets to around 30 to 45 degrees by the time the arm gets to 165. I recently got a book about action anatomy for gamers, animators, and digital artists (by Takashi Iijima) and it says the arm “can extend horizontally to about 90 degrees. From there, with a twist of the humerus, the arm can extend another 115 degrees.” Although the angles in the book are slightly different, both the video and book agree that the humerus twists when the arm goes over the head.
What I still don’t understand is how the upper arm bone is limited on each axis. On my rig, when the arms are in a T-pose, a rotation on the Z axis puts the arm over the head and a rotation on the X axis points the arm in front of the body. I was wondering if maybe the arm cannot rotate more than 120 degrees on the Z axis but if a rotation on the Y axis (twisting the humerus) would orient the X axis in a way so that a rotation on the X axis would continue to move the arm over the head. However, I can’t figure out Eulers that limit the Z value to 120 (or actually 30 for my rig since I made 0 degrees be a T-pose) that would rotate the arm over the head.
Something else I was wondering is if the limits of rotation of the humerus are less when the arm rotates over the head and if that is why the humerus twists.