UNREAL 4 - Maya: Why Unreal Z axis is up? all imported meshes appear with wrong rotations.

Hi, i´m importing meshes from Maya, wich has Z axis to a side, as it should be, while Y goes up, like any plane, BUT… Unreal viewport Z axis goes Up, then all my imported meshes appear with wrong rotations and it´s very hard to fix each and every mesh, what can i do to fix axis problems in Unreal while importing?


Please help, Thanks

When importing the fbx there is an option to change the pivot to match that of UE4. I believe that it is called something like z-up.

For what it’s worth, Unreal has been using this coordinate system since at least 2000 when I started using it. Just go with the flow since I don’t think they are going to change it any time soon.

Z is up because thank god!

Z up IS and SHOULD be the correct axis up for all software, Becuase in any basic math or engineering in real life well before 3d was a thing, XY where always the floor plans and so it leaves Z to be the up vector. So 3ds max as well as UE4 and a few others have this right, unfortunately other major 3d software did not follow this direction like Maya, Softimage and Houdini so we ended up in this **** of a mess for decades and possibly forever.

As a Max user who has had to deal with this everytime I had to export to all other major packages for years. I can, for once, feel happy NOT having to bother with this and can watch others complain about it for a change :).

Export in maya and set z is Up

Was there any reason for Maya to use Y-up as the default?
It doesn’t make much sense, especially since Max has it mathematically correct.

I think it’s wrong, when I was young, in mathematics, we learned that the top axis is Y (ordinate) and the width X (abscissa), so the 3D axis is the Z for the axis depth.
This is why he calls the depth buffer.
I think the people who consider the Z to top, come from the world of architecture, so they have their 2D plan, extrude it on Z and consider the volume is on Z.
So I think it better to have the Y axis in top, but after do it like you like :wink:

Coordinates are arbitrary; there is no ‘correct’ convention.

Unreal was around long before Maya, so perhaps a better question is why doesn’t Maya use Z-up? The answer of course lies in the previous; just because you can use one with the other doesn’t mean it’s their only purpose or intention.

William K is correct. And so is ambershee.
Unreal was around long before Maya, but basic math was around long before Unreal… and as William K stated, Math defines X, Y & Z accordingly.
I’m not sure where some of this ‘other math’ comes from. Basic geometry in grade school teaches you that Z is the "up’ or vertical plane.

The only time Y will be the ‘up’ is in a 2-D axis plane such as a sheet of graph paper. Rise over Run.

Actually Maya 1.0 and Unreal 1.0 were released the same year - 1998. Good trivia. :cool:

IIRC taking graphics class back in the day “Y-up” was the standard in OpenGL. Not to mention “left-hand” vs “right-hand” axes in OpenGL vs DirectX vs. others …

It is arbitrary but to general gaming audience I think most people think “Z-up”.

:slight_smile: bottom line is y being up has caused hell amount of headache to us max users when dealing with most other software for more than a decade. for once in my life i can feel happy that there is this one other major software that i am using today that wont give us trouble on this and for once i feel a strange evil comfort knowing that the other camp is going through the suffering instead ;).
Also feel lucky that its only a simple fbx checkbox to tick, not the same when you are working with complex vfx files outside game dev.

AFAIK the Z up convention comes from cartography, where positive Y is “north” and positive X is “east”, and the Y up convention comes from graphics, where in a canvas Y is “up” and X is “right”.

Alias Maya was used on a bunch of projects from Square Soft before it was used on Final Fantasy 10, where it was already called “Alias Maya 1.0”;
So I think Maya came along a little before Unreal Engine even though “Alias Maya” was released same year.

I literally don’t understand this argument. Unreal’s system makes perfect sense. When you look at a graph paper, you have two axis. X and Y, cleanly reflecting the ground plane, while Z is then the ‘up’ or depth dimension. Discussion about how Maya is right, seems to imply that 2d games exist on an X/Z plane, with no Y, which doesn’t make sense.

Unreal was available for commercial use as early as 1996. Unreal the game shipped in 1998.