78
$\begingroup$

After learning bits and pieces of Maya, 3DS Max, IMAGINE and XSI I noticed that they all have Y-up worlds with Z being used for depth (naturally).

is there a way to make Blender a Y-up world? and does anyone know why isnt it Y-up in the first place?

$\endgroup$
4
  • 2
    $\begingroup$ would be interesting to find out from Ton himself why he went with Z up. $\endgroup$
    – zeffii
    May 30, 2013 at 7:04
  • 8
    $\begingroup$ I think 3DS Max is actually Z-up as well. The reason is explained well here. $\endgroup$
    – grc
    May 30, 2013 at 7:06
  • $\begingroup$ Tips for Unity Game Modeling in Blender The link above is what I keep in mind before starting any Blender project I know that will be used for Unity. $\endgroup$
    – Nate
    Jun 2, 2017 at 5:04
  • $\begingroup$ Most apps let you choose which way is up. $\endgroup$ Nov 2, 2019 at 2:12

4 Answers 4

42
$\begingroup$

As far as I know, cannot be changed. .

Blender uses the right hand coordinate system with the Z axis pointing upwards. This is common with the coordinate systems used by most common 3D CAD packages and 3Ds max:

enter image description here

enter image description here

Another reasoning for this is that a common convention for real world applications for engineering and science is that X and Y axes define a flat ground plane while the Z axis defines up and down

enter image description here

However, if you work between these software that you mention above, one way you could maintain consistency is to export the object(s) as a .obj or .fbx (or any other similar format, most if not all exporters in Blender have this option) to the other application with the 'up' axis being Y etc.

enter image description here

$\endgroup$
5
  • 9
    $\begingroup$ hmm. so the Z-buffer is really a Y-buffer ? :) $\endgroup$
    – user232
    May 30, 2013 at 12:27
  • 9
    $\begingroup$ @user232 - No, that is camera coordinates where x and y are on the image plane and z giving the depth. $\endgroup$
    – neil
    Jun 21, 2013 at 14:32
  • $\begingroup$ This is NOT unique to Blender. twitter.com/FreyaHolmer/status/1325556229410861056?s=19 $\endgroup$
    – L0Lock
    Sep 26, 2021 at 20:16
  • $\begingroup$ Software can still use a right hand coordinate system while defining the ground plane as either XY or XZ. I see right-handed vs left-handed as a separate issue. $\endgroup$
    – prideout
    Nov 3, 2023 at 14:37
  • $\begingroup$ I think I may have misunderstood the X and Y planes. As far as I understand, X and Y represent the horizontal and vertical axes, respectively, in a 2D canvas. Therefore, it seems logical that the Z axis would represent depth, which is why we use the term "Z-depth". However, I am curious to know why Maya uses the Y-axis as the up-axis and the Z-axis as the depth axis, while others use Z as the up and vice versa. Additionally, the term "Z-depth" itself represents depth in the 3D world. $\endgroup$ Jan 31 at 7:53
12
$\begingroup$

It's obviously not perfect, but here are a few things that will make Blender "act" like Y is up.

Navigation
You could change all the shortcut keys so that Y was sort of the top.

Gravity
Change Gravity to Y direction:
gravity direction

Grid
Finally, remove the grid floor and only show the x and z axis when rotating the view. Grid floor

$\endgroup$
4
  • 1
    $\begingroup$ You should probably rotate the camera too, while you're at it. $\endgroup$
    – Gwen
    May 30, 2013 at 15:01
  • $\begingroup$ where is the Grid Floor option? $\endgroup$
    – rraallvv
    Jun 22, 2013 at 0:08
  • $\begingroup$ In the properties panel (N). $\endgroup$
    – CharlesL
    Jun 22, 2013 at 12:58
  • 2
    $\begingroup$ This answer should be higher up, it at least adds some workarounds that might be useful! $\endgroup$
    – Ludwik
    Jul 19, 2015 at 14:16
2
$\begingroup$

Blender is based on Cartesian right handed system, which is Z-up. From what I've read it's not possible to change that since it's pretty much hardcoded among Blender's various features, but I may be wrong.

$\endgroup$
6
  • 2
    $\begingroup$ you're wrong, you can have an Y-up right-handed coordinate system, or any-up for that matter. $\endgroup$ May 21, 2018 at 1:33
  • $\begingroup$ Can you supply source? I haven't used blender for some time now, but I recall it wasn't possible back then (but then, I haven't supplied source either). $\endgroup$
    – dwelle
    May 21, 2018 at 17:54
  • 3
    $\begingroup$ Where in math has anyone heard of Y-up (or down, for that matter)? The proper criterion for a right-handed coordinate system is the result of the cross product (z = cross(x, y), x = cross(y, z), y = cross(z, x)), it does not matter at all which of the unit vectors (x, y, z) points "up". $\endgroup$ May 21, 2018 at 18:05
  • 4
    $\begingroup$ You can have right-handed with Y being up as well as left-handed with Z being up. They are not mutually exclusive. Godot uses Y-is-up and right-handed. Here's a chart: pbs.twimg.com/media/DTbWux8WkAUOZZx.jpg:large $\endgroup$ Dec 8, 2018 at 7:35
  • 1
    $\begingroup$ @user1095108 True, but the majority of users of the application are not 'In math'. They are looking for functional convenience, not abstract truth. :) $\endgroup$
    – Robin Betts
    Mar 3, 2023 at 18:39
0
$\begingroup$

You may "correct" the vision (on your screen) by rotating the camera, but the more important thing is the calculation of transformations and rotation in particular. They all use coordinate system as Z -up. For example for rotation it uses XYZ as default. I am not sure if you can use XZY and watch your transformations accordingly.

Yes there are Y-up systems, but they are more related to computer graphics histoy rather than maths. When there was only 2D on computer screens, X was the horizontal, and Y was the UP axis. When the third D was added, computer people chose to continue with this and added Z forward, off the screen. But they use their transformation matrices accordingly.

$\endgroup$

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .