2
$\begingroup$

So, my first model is rigged using rigify, so I am not an expert and have been coming here for answers to a few questions regarding some problems the model has and the best way to deal with them.

my latest issue is my models forearms: enter image description here

They are find in the T-Pose and most other poses. But if I use them with the hand IK, rotating the hand so it is palm up, instead of down: enter image description here

...not ideal. How do most models deal with this? Do I need to alter the bones, or does my model need to be more complex? Is there something rigify would have done about this that I configured incorrectly?

EDIT: Here is an image of the bone rotations: enter image description here

EDIT2: More loop cuts result: enter image description here enter image description here enter image description here

EDIT3: Twisting more of the arm: enter image description here

EDIT4: Changed the model for 90 degree twists: enter image description here

EDIT5: So, I have merged the duplicate verts on my model and removed the larger faces on me knees. I have added more cuts to my arm, and it looks.. ok? enter image description here enter image description here

EDIT6: reference image for bevelling enter image description here

$\endgroup$
5
  • $\begingroup$ This should not happen. Rigify's generated rig has so-called twist bones, that's 2 bones for the upper arm and 2 for the forearm. Check the deform bones (DEF-....) on layer 30. IIRC there is an option that controls the number of twist bones but right now I don't know where it is. $\endgroup$
    – Blunder
    Aug 24, 2021 at 20:01
  • $\begingroup$ Have a look here and compare it to your rig: blender.stackexchange.com/q/216326/107598 $\endgroup$
    – Blunder
    Aug 24, 2021 at 20:03
  • $\begingroup$ Hi. You appear to be referring to the blue sphere's as they are the "tweak bones". Two in the upper arm, two in the lower. How are they supposed to act? If I forget the hand IK and rotate these bones manually, I just end up moving the deformation up the arm and into the torso. $\endgroup$ Aug 24, 2021 at 20:33
  • $\begingroup$ No, I was referencing the deformation bones. They are green colored, on layer 30 (Pose mode). But since the arm of your rig has 4 blue spheres, that's correct & it is not the reason for your problem. The forearm has 2 bones and only the lower one should rotate with the hand: i.stack.imgur.com/do6el.gif If you like you can upload your file to pasteall.org/blend After the upload, copy the new web address (URL) here so we can access the file. $\endgroup$
    – Blunder
    Aug 26, 2021 at 10:44
  • $\begingroup$ I edited my post with the hand twist to show the current bone rotation. I imagine enough twisting would cause it to deform eventually, but I'd prefer to be able to have a full palm down and palm up at least. pasteall.org/blend/6b30bb7f40e0401f873eaaa2bcaa4eeb Here is a link to the .blend file (and thank you for taking the time!). I think the issue is just that my model isn't robust enough, but I tried adding more cuts to the forearms and it still deformed with all the extra vertices to work with. $\endgroup$ Aug 26, 2021 at 18:20

2 Answers 2

3
$\begingroup$

First, your model has duplicated vertices. Remove them with a Merge By Distance (M) in Edit mode.

Furthermore, the knees have overlapping faces. You need to remove the larger ones: enter image description here

To fix the twisting, you need more loops along the forearm and legs, otherwise there's no way the geometry can 'smooth' the twisting from wrist to elbow. With more loops you can have 100% effect of the twist bone in the wrist vertices and 0% in the elbow vertices and a gradual progression in between.

Don't forget to adjust the weights after you fixed the mesh. Parent the mesh to the rig again With Automatic Weights.

Example with extra loops for the forearm, upper arm, and 2 more for the elbow:
edge flow example 1

The hand is rotated by 180° compared to the shoulder:
edge flow example 2

Example animation with the extended arm (about 270° rotation). The upper arm rotates also a little, especially when the thumb points to the floor:
turn the hand animation 1

Same movement but with bent arm:
turn the hand animation 2

Remember, for a natural range of motion the wrist can only twist about 90 degrees in each direction from the 'resting' position, that's 180 degrees total range. So any rotation bigger than that has to be complemented with upper arm rotation. If you just twist the wrist 180 degrees in one direction without also rotating the upper arm the pose will look unnatural, because it would actually be unnatural. enter image description here

Also good to know: the forearm is comprised of two separate bones, the Ulna and the Radius: enter image description here

The wrist rotation is one of these bones rotating around the other at the wrist, but not at the elbow: enter image description here

If they were to rotate more than 90 degrees to one side, they would have to bend to wrap around each other. Since bones are not that flexible, they would break.

$\endgroup$
12
  • $\begingroup$ Added an edit2 to the main image showing the result of this. I think you are right, but my hasty test looks like a twizzler and I have no idea how I'd need to edit the model to make it look natural $\endgroup$ Aug 26, 2021 at 18:58
  • $\begingroup$ Well that's because you are twisting the wrist 180 degrees to one side, it doesn't look natural because that movement range is not natural in humans. If you make sure your upper arm and elbow are perfectly still and only twist the wrist, you will notice it only has a range of about 90 degrees to each direction. So from the T pose, it should only rotate in one direction until the palm is facing forward and in the other direction until the palm is facing backwards (actually a little less cause the range is smaller in this direction). $\endgroup$ Aug 26, 2021 at 19:43
  • $\begingroup$ If you stand in a T pose and try to rotate your hand so your palm faces up, you'll see your whole arm up to your sholder will also rotate, cause you can't make your palm face up by only twsting your wrist. $\endgroup$ Aug 26, 2021 at 19:46
  • $\begingroup$ Added Edit3 of my twisting more of the arm to accommodate for the movement with the twist moving into the upper arm and shoulder. I noticed I could perform this movement with my upper arm near the shoulder hardly moving at all. I attempted to just rotate the first 3 tweak bones in the arm to mimic this. But I just ended with the twist in the upper arm. So I'm still at the point where I can perform a real action that causes a distortion in the model. I don't expect it to be perfect, but it hurts the most basic motions. $\endgroup$ Aug 26, 2021 at 20:51
  • 2
    $\begingroup$ The T-pose is fine. The limbs of your model just need more edge loops as suggested by Alexandre. I've added an example animation. It's just the hand IK and upper arm IK that are keyframed. For a better deformation at the elbows and knees, you can give them extra loops as you did for the knees and change the topology a bit. Have a look here youtu.be/jByzklhVwH8 and here youtu.be/UvjRA0gqhWo $\endgroup$
    – Blunder
    Aug 27, 2021 at 12:11
2
$\begingroup$

(Addendum in addtion to the Alexandre Marcati's answer)

Your "Edit5" looks good. Keep in mind that your model is really low poly. It has only 484 vertices and faces.

When the palm of the hand points up the faces of the edge loop must rotate by about 90° around the X-axis at the elbow and roughly another 80° to reach the armpit. That's about 170° over the full length of the arm. And there are only 3 faces in the forearm and another 3 in the upper arm to do the job:

low-poly version

Please note, in the animated GIFs in Alexandre Marcati's answer which I've added the model has Shade Smooth enabled. In your screenshots the model is Shaded Flat and the Cavity shading option is enabled which highlights the edges even more. The screenshot above is closer to yours because it has only a different matcap and is flat shaded.

If you don't want to have your model so "blocky" add a Corrective Smooth and a Subdivision Surface modifier (+ Shade Smooth)

smooth + subdivisions

One last note: The rig in your provided blend file is bugged! The Rigify layer buttons for the right arm are missing. I've recreated it with the script in the linked question: Rigify->Generate Rig doesn't create all rig layers in the properties ui

Here the blend file with the animation as shown in the GIFs: https://pasteall.org/blend/c9c3e90e67f14b1cb9b3d069cd292734 The left knee has a different topology to improve the bending.

To see the IK pole target of the elbow have a look here: why are rigify's IK pole targets Hidden in pose mode

$\endgroup$
4
  • $\begingroup$ Thanks for the additional notes, I really appreciate them. I am certainly not great with modelling and animating and am just getting properly into it, so I really appreciate how helpful people are being with these issues. I've downloaded the fixed model and had a look at the knee and I can see why that would work a lot better, though I'll have to fiddle around with how to do it (learning process!). $\endgroup$ Aug 29, 2021 at 14:09
  • $\begingroup$ I'm not quite sure what you mean by bugged though. In the Rig Layers of the item panel on my original model I have Arm.R for the IK, FK and Tweak bones. Perhaps my upload was corrupted in some way? Or am I looking at the wrong area? Also, thank you for the smoothing tip. I like the idea of blocky, but it may not work. Although, if there an easy way to cut an edge into a new face? e.g. two faces meet at a corner, and you "cut" the corner, forming 3 faces, the two original, and the third which joins them instead of a corner (I'm explaining this badly..). $\endgroup$ Aug 29, 2021 at 14:13
  • $\begingroup$ Added an Edit6 as an example image in the original post. The word I was looking for was Bevelling xD. And don't feel like you need to answer all this. I already consider everyone here to have given more than enough of their time. These are very much "if you feel you have time" questions $\endgroup$ Aug 29, 2021 at 14:16
  • $\begingroup$ You're welcome. For topology have a look here and here. -- Strange, the Rig Layers in my Blender looked like those in the linked question. The buttons "Arm.R (FK)" and "Arm.R (Tweak)" are missing. I don't why this now and then happens. -- BSE is a question and answer site, it's not like a common forum. One "thread" has ideally one question and one or more answers. Feel free to post another question about the bevel (or have a look at the Bevel modifier & set the mode to percentage. ;-) $\endgroup$
    – Blunder
    Aug 29, 2021 at 17:06

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .