Scaling model with armature issue (possible 3.6 issue)
Hey guys, I know this isn’t exactly relating to diffeo (I thought it was), but I think scaling a model with a Rigify armature (in object
mode) and applying transforms is broken in Blender 3.6. I discovered it using the most current diffeo build, then tried it with stable
1.7 version, then 1.6, yet issue remains. I think it is something to do with constraints in 3.6. The issue isn’t the scaling itself, but after
you scale, apply transforms, then reset bone lengths, the armature is fine except for when you transform either the limbs or the torso
controller--the limbs stretch as if you have limb stretching on, even when it’s off. If someone else can confirm this as well that would
be great, and I’ll put a bug report in with Blender.
mesh usually isn’t this squashed when apllying scale normally:
clip of stretching occuring after bone lengths are set and hand/feet stretching set to OFF:
https://mega.nz/file/T2pxEJzB#4ZfiPe59P_Dg37ze1HkNFT4GwKmd-2wK5j2MmrTLj0s
Steps to recreate:
1: Import model
2: Create and setup metarig or generate Rigify rig directly
3: In object mode, select all meshes and armature and scale to desired scale.
4: Apply scale on armature
5: go to pose mode and reset bone lengths in constraints tab on all bones with ‘stretch to’ constraint
6: Pose character, specifically limbs and torso and notice limb stretching even with stretching set to OFF.
Comments (7)
-
-
- changed status to open
-
repo owner As Alessandro said, scaling and applying scale will break rigify. You have to scale first, make rigify after.
You may also consider using the Advanced Setup > Rigging > Change Unit Scale tool, which also changes other things with dimension of length, like bump distance.
https://bitbucket.org/Diffeomorphic/import_daz/wiki/Advanced/Rigging/Change Unit Scale
-
reporter I understand what you guys are saying, but with all due respect, I’ve manually done this close to a 100 times after importing with diffeo, hence why I noticed a change. You can still scale and apply scale to a Rigify model as long as you reset bone lengths and check constraints. Here is one of the many models I have done just this to (notice non standard Daz height and transform panel):
NOTE: transform has a non zero value because I just moved it over so it is easier to see ruler:
IK/FK work just fine, as well feature sets as well as retargeting mocap (metarig must be scaled too).
You guys are correct though, ideally you want your model properly scaled before even beginning rigging, whether through sculpting to scale or other means like Diffeo, but this has just been my personal way of doing things for quite a while. I like to have my models properly scaled all the time without having to scale the root bone during animation everytime. I actually never used the scaling feature through Diffeo, but I will check it out now, thanks for pointing that out to me. I guess my workflow will just have to change now when it comes to scaling, but either way something with 3.6 has changed because the last model I setup was with 3.5 and I didn’t have an issue with this. You can close this ticket now, I appreciate both of your inputs, thank you again.
-
You don’t need to scale the root bone, you can scale the armature in object mode.
If there’s nothing to add please close as invalid, eventually you can report a bug to the blender guys if you need to.
-
reporter - changed status to resolved
-
- changed status to invalid
- Log in to comment
I’m not sure why you want to do that. Usually you normalize before rigging, then just scale the rig if you need to. Also because normalizing doesn’t work in animation, that is, it is not keyframable.