I’ve been running into this issue while trying to weight paint accessories/clothes to scaled bones on a already rigged character where the mesh becomes displaced in object mode but not edit mode. The only fix I have found is changing the rest pose to include the new scale but this requires me to delete all my shape keys, Here’s an example of what I mean:
The horn gets scaled up and displaced.
Is there any other workaround for this? Thanks!
Welcome to BA
In object mode, apply scale with Ctrl A > All Transforms. Do this with the armature/mesh/really everything in your scene
Scaled bones, or scaled armatures?
Fast fix, not guaranteed to work right: With your armature in pose mode, parent the object to the main bone to which it should be parented, with “keep transform”. Then set the armature to rest mode and unparent the object with “keep transform.” Then, select your object and apply all transforms. Now, you should be able to parent it to your armature object (assuming its only bones that are transformed, not the armature object) and weight paint it.
Won’t be exact in case of inherited, non-uniform scale. There’s not really any reasonable fix for that. Won’t be right if trying to match it to multiple bones. Not any fix for that either.