4

When scaling on one axis it doesn't scale only at that axis. Only if I apply the object rotation (as seen on the gif).

I'm sure it's something simple, but I already reset all settings and it didn't solve it.

Gif

FHonorio
  • 41
  • 2
  • I don't know why it's working like that, but all my 3 Blender versions from old to new are doing it the same way, so I don't believe it has something to do with settings - or at least it seems to be the default method, so resetting won't help. Maybe you changed some settings if it ever worked different for you. – Gordon Brinkmann Jan 06 '22 at 07:12
  • This is really an interesting question, I tried to figure an explanation but I can't. – mqbaka mqbaka Jan 06 '22 at 07:20
  • Actually I'm right now sitting here doing different rotations and comparing the size changes to find out how this method works, I was thinking of things like multiplying the Y measurements to adjust to the scale while at the same time keeping all angles perpendicular... but I haven't come to any conclusion yet. As I said for the question, this seems to be the default method (to keep it perpendicular) as long as the rotation is not applied, so nothing to fix here. But I'm really interested how this conversion from Global Y scaling to scaling different on all axis is calculated. – Gordon Brinkmann Jan 06 '22 at 07:45
  • I asked users from other softwares and it seems that it also happens in 3DS Max so may be there is some kind of logic behind it? There is one explanation here https://blender.stackexchange.com/a/28783/115533 but it lacks clarity and I don't understand. It has also been reported as a bug https://developer.blender.org/T42834 but it was closed because it is stated to be the expected behaviour. – mqbaka mqbaka Jan 06 '22 at 07:51
  • I get why this is done like that, however: in Object Mode, scaling is supposed to be reversible. If you would distort the model like that and the scale would show X/Y/Z to be 1/5/1, than setting the Y value back to 1 should restore the original object in original dimensions. However, if you have a distorted cube like that and just reset the value to 1, it stays distorted - only shorter on the Y axis. Because the scale shown in there is no global scale, but local object scale. It's simply not possible to scale in object mode and keeping the original angles while distorting on a global axis. – Gordon Brinkmann Jan 06 '22 at 08:04
  • 1
    @GordonBrinkmann It seems you are not allowed to shear the object-space basis vectors. I'm still intrigued to know whether this is a constraint imposed by the application, or a natural consequence of the maths. – Robin Betts Jan 08 '22 at 07:31
  • 1
    @RobinBetts I guess since other software like 3DS Max works the same it must be some kind of mathematical reason or at least common practice that scaling in Object Mode could or should not alter the object's proportions other than given factors in their local orientation. – Gordon Brinkmann Jan 08 '22 at 10:57

1 Answers1

1

There is a workaround: parent your object to an empty and scale the empty

3dFigaro
  • 31
  • 7
  • Nice Move! I so hoped this would work .. but I haven't found a way to clear the parent withhout the object snapping back... :( – Robin Betts Jan 08 '22 at 07:22