How to change left handed Y-Up coordinate system to Right handed ENU coordinate system

Hi
I am wondering, if anybody has a suggestion on how to convert Unity’s left handed Y-Up coordinate system into Right handed ENU coordinate system?
Thanks

I would suggest that E(ast) = X, N(orth) = Z and U(p) = Y. Of course if you’ve got Unity scenes where X and Z were used for other directions then you’d need to map that accordingly.

I’d probably handle it by making a static class with methods such as Convert.ENUToUnity(Vector3) and Convert.UnityToENU(Vector3).

1 Like

I got distracted and didn’t get a full answer out.

For simple cases, rotation can be handled similarly. But for a robust solution you probably want to make a conversion matrix.

Rather than explain that by typing on my phone, here’s a good starting point.