Hey Chunck! I guess when I created the first curve circle for the chain hook I scaled it in object mode, which later caused the array modifier to misbehave until I applied the scale to the object. This brought up the question in my mind "when should we apply scale, and any other transformations if any?". I noticed throughout the course so far we haven't had to apply any transformations at all and we were able to just tweak things in the modifier panel (which I assume would look very different if we had applied scale for example).
A good rule of thumb is always to apply scale and/or rotation after you've done changes to your mesh in Object Mode. The issues appears when you try to add modifiers or shaders to your mesh.
But there comes a point where applying your transforms just becomes a muscle reflex xD
You have data and you have objects that contain data. Modifiers, and physics work with the data. Transforms are at the object level. So any rotation and scale at object level will sometimes appear to distort the mesh. That is because it comes after the modifiers. When you apply the transforms like rotation and scale you are actually making changes to the data. You can see this by using the default cube. Tab into edit mode and click overlays drop down and under measurement check edge length. You will see all edges are 2m. Tab to object mode and scale by 2. On n-panel it will give 4m as all the dimensions. Tab into edit mode and you will see that the data is still all 2. Tab out then add a bevel modifier. Scale on x by 3. You will see the bevel become distorted. If you apply the scale the bevel looks fine. That is because the bevel modifier works on the data.
Like always, it depends. You can work without applying any transform and just work on with how things behave and you'll achieve what you want to achieve nonetheless. You could call it working dirty. You could also work super clean and apply your transforms when you see fit. Scale most of the time you have to apply it, but rotations you almost never apply them since you want to take advantage of the local coordinates of your object. Same for location, you almost never apply it. But again, it'll depend on your specific scene and what you're trying to achieve.
Hi Nas naskharsa ,
Dwayne dillenbata3 says it really well (the Spreadsheet can help seeing what happens).
Another way of looking at the Mesh Object's Transforms, is:
Each Object has it's own Coordinate System, where the Object's Origin (the orange 'dot') is the center of that Coordinate System (X, Y and Z are all zero).
The Positions of the Vertices are measured in the Object's Coordinate System and if you Move, Rotate and/or Scale an Object (in Object Mode!), you do those Transforms to the Object's Coordinate System and the Vertices' Positions don't change:
Now, if you'd Apply All the Transforms (what you almost never want to do), you 'reset' the Object's Coordinate System to line up with the World's Coordinate System, so the Positions of the Vertices change (this is quite destructive!):
The rule of thumb I use is: always Apply the Scale, try to avoid Applying the Rotation and never Apply the Location. (It's a rule, therefor there are exceptions.)
Now, with Curves it is a different matter; the rule here is simple: never Apply the Scale! (I always try to do all my Transforms on Curves in Edit Mode and that never got me into trouble yet.)
All fantastic answers, very insightful everyone! 🙏
The hard and fast rule that I operate on is that you likely always want to apply your transforms when dealing with modifiers, or at least certain transforms (you may not want to apply the location, depending on the modifier and the operation). The biggest reason is that they generally operate on the assumption your object is at default transforms. Any deviation and you'll start to create some issues with how the mesh is being interpreted, like everyone has been mentioning. :)