This quick guide shows how to fix objects in Unity stretching when being rotated. The issue can result in colliders not matching rotated objects or the objects appearing distorted when rotated.
This video shows an example of an object distorting when being rotated in the Unity editor:
Cause of the object stretching issue
The cause of objects stretching or skewing when rotated is due to a parent object having a huge difference in scale. This means a parent of the object or a parent of their parent might have a scale of “100, 500, 250” with children scaled at “0.01, 0.002, 0.004”. This results in rendered child objects deforming when rotated.
The issue happens in all versions of Unity since Unity 5 so Unity 4 and earlier are unaffected. Although be aware that scaling when not needed should be avoided as it can affect the performance of your game.
Try not to scale objects unnecessarily and instead change the scale of your models where possible as the performance costs of scaling rendered objects, scaled collision calculations or just having your dynamic batches broken up can slow your game down with a lot of objects especially on mobile platforms!
How to fix the object deformation
A simple fix is to drag all the affected children out of the parent, set the parent back to a normalized 1,1,1 scale then drag the children back into the object. This video shows how to do this: