Search Unity

Strange behavior with non-uniform scaling and parenting

Discussion in 'Editor & General Support' started by SunnySunshine, Sep 29, 2019.

  1. SunnySunshine

    SunnySunshine

    Joined:
    May 18, 2009
    Posts:
    977
    So I've been using Unity for many years, but I haven't come across this issue before. I guess it's because non-uniform scaling isn't something I've been using that much.

    Anyway.

    When parenting an object to another object that has non-uniform scaling, weird things start to happen:

    https://gyazo.com/699007b5def0f62a10f0fa65e2e9d6e9

    The only way I've found so far to prevent this from happening, is to create a child object that "undoes" the scaling of the parent object, and then use that as parent for the object you want as a child:

    https://gyazo.com/8e70c49e74c617dca9787a097c5a2d7d

    I've tried doing the same thing in Unreal Engine, Godot Engine and Blender, and none behaves the same way as Unity. In them, when you make an object child of a parent with non-uniform scaling, the scale is preserved and no distortion occurs.

    Which brings me to my questions -

    Why this unorthodox behavior?
    What could possibly be the benefit of Unity behaving in this manner?
    What causes it to happen in the first place?
     
    Last edited: Sep 29, 2019
  2. SharpCoder

    SharpCoder

    Joined:
    Apr 10, 2016
    Posts:
    2