Actor rotation with negative scaling mangled on save

I have some actors that contain negative scaling, and every time I save my Unreal project, without changing anything else, it corrupts the rotation more and more, to the point where it totally destroys the original positioning. This seems to only happen when an actor attached to another actor has both rotation and negative scaling.

Hello dbuchoff,

I have a few questions for you that will help narrow down what issue it is that you are experiencing.

Quick questions:

  1. Can you reproduce this issue in a clean project?
  2. If so, could you provide detailed list of steps to reproduce this issue on our end?
  3. Could you provide screen shots of any other settings/blueprints that may be involved with this issue?
  1. I can’t seem to reproduce this exact same problem in a clean project. But I have an extremely similar problem that can be readily reproduced and may be another symptom of the same bug.
  2. Instructions:
    • Create a new Default level
    • Create a cube static mesh actor Assign it a transform with a negative scale and nontrivial rotation using the Details panel. {(X=0.000000,Y=0.000000,Z=0.000000),
      (Pitch=0.000000,Yaw=0.000000,Roll=1.000000),(X=-1.000000,Y=1.000000,Z=1.000000)}
    • Create a cone static mesh actor. Attach it to the cube in the World Outliner. Give it a transform with weird rotation using the Details panel. {(X=0.000000,Y=0.000000,Z=0.000000), (Pitch=45.421928,Yaw=47.976006,Roll=70.473503), (X=1.000000,Y=1.000000,Z=1.000000)}.\
    • Save the map with the Save Current toolbar button.
    • Double click the same map in Content Browser. Note that the cone flips when the map is reloaded.
    • Save the map again with the Save Current button. then double click your map again. Note the cone rotation changes again. You can keep doing this and the cone will rotate again every time you save and load.
  3. There are no special settings nor blueprints involved. If you like, I can provide the uproject with the magically breaking chair, though this was created with a custom C++ plugin (though the objects themselves are simple static meshes).

I was able to reproduce this issue on our end. I have written up a report and I have submitted it to the developers for further consideration. I have provided a link to the public tracker. Please feel free to use the link provided for future updates.

Link: Unreal Engine Issues and Bug Tracker (UE-43981)

Make it a great day

Thanks, Rudy!

It looks like this might have been fixed along with UE-34489 in UE 4.16.1.