I had a very frustrating experience with Blender's UI. In the transform section there is location, rotation and scale and I thought scale would be dimensions, which I found out later it is not. Now I think a lot of people will confuse scale with dimensions (which is not even visible by default). Let's say I want to make a 0.1m cube; I tried to set the scale to 0.1 but since the default cube is 2m my new cube is now 0.2m.

Why is the default cube chosen like this and not the more natural and intuitive 1m3?

Wouldn't a default cube of 1m3 be better since then a naive user who confuses scale with dimensions would still get the desired result when trying to input a cube of length 0.1 and input that number into the scale?

  • $\begingroup$ When you look at the default cube there is one unit extending in each direction from the centre. One above 0, one below equally two and then the same for X, Y axis. But before I looked I was totally with you. $\endgroup$ – rob Oct 1 '18 at 11:40
  • 2
    $\begingroup$ My guess is it's arbitrary but IMO sensible choice. Akin to a circle of radius 1 there is no fraction involved for radius vs diameter. All the components of points of the cube have value -1 or 1 and a centre at (0, 0, 0). There are a lot of people clear on the distinction between scale and dimension. eg Scale model cars are rarely larger in dimension than the original. The unit is ideal for a system like the metric system. Your question could be considered a little off-topic as primarily opinion base. $\endgroup$ – batFINGER Oct 1 '18 at 11:44
  • 9
    $\begingroup$ I'd just like to point out that "2 meters cubed" is not "2 cubic meters". The default cube is indeed 8 cubic meters! $\endgroup$ – Nicola Sap Oct 1 '18 at 14:05

There is no reason. But the default cube goes 1 unit in every direction, it's the same size as a sphere with a radius of 1 unit as well as for example procedural spherical gradient, a plain axis empty has lines going 1 unit in each direction of all axis as well. If it was 1 unit size and it was centered it would have sides ending at half a unit in all directions, that might be weird. So for what it's worth, it has some sense behind it. I think it is mainly this way, only because it had to be some size, and this is no better or worse than anything else. You can create a cube of any size and hit ctrl+u to save another default file if that makes more sense to you.

  • 2
    $\begingroup$ The reasons don't stand as much solid arguments. Someone else might see beauty in a system with unit sized cube and sphere with diameter of one and empty with half unit lines etc. For example Houdini uses this concept and it works great. The middle of the answer kind of contradicts the first sentence. $\endgroup$ – Jaroslav Jerryno Novotny Oct 1 '18 at 15:34
  • $\begingroup$ Yes, I agree. There might be many points of view here and no one way is better than another. I don't believe this is extremely important nor that the arguments are or should be solid. I would be surprised if there was any deep philosophical discussion among the developers about it at the time it was decided. It could be one way or the other. Same as with the directions of the coordinates. What axis should point in what direction depends on how you look at it. Literally. It would be interesting to hear a more detailed answer from some developer who might know more about it. $\endgroup$ – Martynas Žiemys Oct 1 '18 at 15:46
  • $\begingroup$ For the axis system there could be a case build that everyone else sticks to the +Y up orientation, even openGL, so Blender is a black sheep here. But the starting primitives everyone does differently, even the way they are put into the scene :) $\endgroup$ – Jaroslav Jerryno Novotny Oct 1 '18 at 15:58
  • $\begingroup$ Oh, but everyone does the axis differently as well - think of all the technical CAD software. Many cases can be built. It's not only the up direction that is different as well. Well, I suppose that does not contribute to answering this question... $\endgroup$ – Martynas Žiemys Oct 2 '18 at 7:01
  • $\begingroup$ I would argue while there is clearly no harm in having a 2x2x2 cube, there is a benefit to a 1x1x1 cube, or 1d sphere or cylinder, etc. What? Scaling to a specific number becomes a multiplication of 1, not 2. Yes, the tool does let you set the dimensions, sort of making it a moot point, but I find myself almost always starting with the cube, scaling it to 50%, baking the transforms to get it back to a scale of 1x while still being a unit cube. Almost every single time! Again, there is no down-side to starting with a 1x1x1 but there is an upside. That's my thought anyway. $\endgroup$ – Mark A. Donohoe Jun 10 '20 at 0:13

Learn the distinction between scale and dimension.

The accepted answer explains re arbitrary but logical choice of default cube dimensions. All default objects are added with unit scale.

Wouldn't a default cube of 1m^3 be better since then a naive user who confuses scale with dimensions would still get the desired result when trying to input a cube of length 0.1 and input that number into the scale?

I say no. As soon as a primitive object is not unit in all dimensions it will no longer be the case that scale matches dimension. Better to learn the distinction between them.

An object is "full size" at unit scale (default). This is a fundamental of 3D maths. An object is transformed in 3D space using a matrix where unit scale, not dimension, is used along with zero location and rotation as default. An objects dimensions are determined by its data, (a mesh for a mesh object). and can be any size. The dimension of the local data in the mesh is always the same as those of the (unmodified) object at unit scale.

Setting the dimensions alters the scale. Setting the scale alters the dimensions. eg the x dimension of default cube is 2 and we want it to be 1. Setting the dimension.x to 1 then scale.x is adjusted accordingly to 0.5. Or dually change scale to 0.5 and dimension is adjusted to 1.

If we now apply that scale (make it unit) the dimensions stay the same. We have changed what we consider to be "full size".

  • $\begingroup$ I don't think you understand the question. You're referring to the panel creating a dimension of 1 which adjusts the scale, but the underlying vertices are still at a dimension of 2. What the OP is saying is the underlying vertex data should create a unit cube where the geometry is 1m apart, hence both the dimension and the scale would be 1. $\endgroup$ – Mark A. Donohoe Jun 9 '20 at 20:43
  • $\begingroup$ I don' think you understand the answer. The OP doesn't understand the distinction of scale and dimension, setting all (for cube) geom to halves so dimension matches scale isn't going to help that. Consider that in mathis the unit circle has radius 1 not diameter. $\endgroup$ – batFINGER Jun 9 '20 at 23:52
  • $\begingroup$ If you read your answer, your comment "Setting the dimensions alters the scale. Setting the scale alters the dimensions" but that's only referring to the tool because it implicitly scales it (overriding the actual virtex dimensions.) The original question says make the original geometry (i.e. the vertices) represent a 1x1x1 cube so the scale is a unit scale of 1. You also said "As soon as a primitive object is not unit in all dimensions..." but that's just it... a 2x2x2 cube is not a unit in any dimension. It is 2 in all dimensions and has a volume of 8, hence it is not a unit volume. $\endgroup$ – Mark A. Donohoe Jun 9 '20 at 23:58
  • $\begingroup$ Yes, he misunderstood the terminology, but he used it correctly. He wants a 0.1m cube so he would think to scale a 1m cube by 0.1. However, he has to scale it by 0.2 because the cube is 2x2x2. So, bringing in a cube at 1x1x1m and he wants it at 0.1, he would simply scale it by 0.1. He wants it at 5, scale it at 5. You bringing up the unit circle is irrelevant because that's used for angular calculations not volumetric dimensions. $\endgroup$ – Mark A. Donohoe Jun 10 '20 at 0:01
  • $\begingroup$ What has volume got to do with anything? Consider a non XYZ symmetrical primitive. If you feel strongly write an answer supporting units. $\endgroup$ – batFINGER Jun 10 '20 at 0:04

Wouldn't a default cube of 1m3 be better since then a naive user who confuses scale with dimensions would still get the desired result when trying to input a cube of length 0.1 and input that number into the scale?

If it was better, it wouldn't be for the reason you suggest. Someone's confusion is not a reason to change this so he/she can keep being confused. The fix would be in the UI, but I don't think it is not good enough as it is.

That being said most other 3D apps use a single unit sized cube - for example Houdini and Maya:

enter image description here

In Maya you get a sphere with radius of 1, in Houdini you get a sphere with diameter of 1. So in the end every app does something different.

I am sure there can be found arguments why this or that is better, it would be opinions mostly and what the user is used to. There is no single natural intuitive approach.

The Blender cube has 2m sides, because a developer coding Blender (Ton probably at that time) some day woke up and decided on his personal preference that it will be 2m wide - the decision process was probably that a sphere will have a radius of 1 and the cube will correspond with sphere's diameter. And it stayed since because it doesn't really matter.


The scale input/value is "dimensionless" so changing it to 0.1 means 0.1 times whatever the original dimension/size was.

If you need specific dimensions note that you can type in values into the Dimensions x, y, z boxes on the right, and that will change the Scale values accordingly.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.