Z as Y and Y as Z when export

I imported a .3ds file into 3dsmax and exported it as .babylon. When I compared the .3ds file and .babylon file, what I noticed is, for the mesh.positions, the y value in .babylon file is actually the z value in the .3ds file and the z value is actually the y value.

What is the reason for this swapping y and z? Does Babylon treats y as z and z as y?

Thanks in advance.

It’s just a choice that had to be made, not sure if there is a particular reason. It’s probably @Deltakosh who define this :wink:

Z-up : Blender, 3dsMax, Unreal Engine, …
Y-up : BabylonJS, Unity3D, Maya, …

As @Vinc3r said, you need to pick one and here, it is close from most of the DirectX default conventions.

Y up is often use by game engine and 3d representation so when switching to 2d like gui and so on x/y feels pretty natural. (just trying to find some arguments to a never ending over heated discussion :slight_smile: This is almost the same as tab vs space where I am proud to announce I do prefer spaces :wink: )