News:

 

Topic: New Scaling Options Explained  (Read 3350 times)

0 Members and 1 Guest are viewing this topic.

  • Posts: 496
  • Triangle
February 23, 2013, 04:27:01 pm
Hi there!
Since the 2013-Feb-23 build of NVil there are a few more sclaing options available. I put together a chart, that explains, how they work, and will run you through it.


You will only notice any difference between the styles, if you use steppings when scaling!
Until now, we only had the iterative style scaling available in NVil. That kind of scaling is fairly uncommon, if not even rare (since I've only seen it in NVil). This is what it does: It takes the current scaling value of an object, and multiplies it by the Scale Factor. After one step, the current scale value has changed, so for the next step it takes this updated scale value and multiplies it by the Scale Factor again. So the newly updated scale value of each step serves as a new input for the next step, hence it is called iterative. As a result, you'll get exponential growth or decrement.
NewScale = Initial Scale x Scale Factor^(Steps*X) [X=1|Scale Factor>1; X=-1|Scale Factor<1]

Even if the result is visually predictable, because you'll always know it grows or shrinks exponentially (half of the half of the half etc.), it's very hard to predict the actual resulting value, unless you're a mental arithmetic genius.

Relative Style Scaling: This is the most common scaling method in 3D software, I believe. Blender has this kind of scaling and Maya does, too, when 'relative' and 'discrete' are activated in its tool options. This is an additive style of scaling. The Scale Factor is applied to the current scale value of the object and the result is added with each step to the current scale. So if you have a 1x1x1 cube and scale it up along the Y-axis with a Scale Factor of 0.5 once, the cube will become 50% higher than it's current height, resulting in ScaleY = 1.5. If you scale it up twice, you'll get a cube that is twice as high as before, ScaleY = 2. But if your object is alredy scaled down to 50% of it's original size (ScaleY = 0.5), half of the current height (0.5 x 0.5 = 0.25) will be added. So after one step, the new height will be 0.75, after two steps 1.0, after three steps 1.25 and so on. So Scale Factor is applied relative to the current scale.
NewScale = Initial Scale + Initial Scale x Scale Factor x Steps

With this kind of scaling the result is very well visually and numerically predictable.

Increment Style Scaling: This style of scaling is available in Maya, for example, if "relative" is unchecked. It doesn't apply the Scale Factor to the current scale value and adds it, but applies it to the original scale of 1.0 and adds it. So for a 1x1x1 cube the result will be the same as with relative scaling, but for a cube that is scaled down to 0.5 and a Scale Factor of 0.5, you'll get 1.0 after one step of scaling up, 1.5 after the second step, 2.0 after the third step. The advantage is, that you can always scale back to the original scale value of 1.0 without changing the Scale Factor, which isn't always possible with relative scaling (imagine current scale of 0.75 or 0.0).
NewScale = Initial Scale + 1.0 x Scale Factor x Steps

With this kind of scaling the result is numerically predictable, but it can be hard to visually predict, because you can't always tell by the dimensions of the object, what it would look like when scale equals 1.
!!!This method only works in object mode and only if ‘Manipulator Space Object Scaling Disabled’ is ON!!!

There are a few more things worth mentioning.
'Reset Object Scale' restores the orignal scale of 1x1x1 (modifies dimensions).
'Freeze Object Scale' sets the scale values to 1x1x1 without changing its dimensions. So the current dimensions will be the new 1x1x1.
'Maintain Object Position When Scaling' prevents the objects from moving apart or together, while scaling. So they get scaled individually in their own space.
'Maintain Object Scale When Scaling' allows you to just scale distances between objects, without changing their dimensions, for example if you want to make objects to be twice as far apart.
‘Manipulator Space Object Scaling Disabled’ means, that regardless of the chosen pivot orientation, scaling will be done in object space. When this option is off, only the dimensions will be modified while scaling, but not the scale values, they'll stay the way they are!

I hope this helps answering some questions, that would not have been asked in the first place. :)
« Last Edit: February 03, 2014, 08:45:43 pm by Vaquero »