Transform a right handed camera to a left handed

I got an editor where users can create augmented experiences. We have built the editor from the default left handed coordinate system.

Then I have a viewer where the experiences are - viewed.

I am getting a camera pose in a right handed coordinate system from a external source. The pose is composed of a position vector and a rotation quaternion. Everything works in the viewer as long I use scene.useRightHandedSystem.

My problem is that everything is built around a left handed scene, and it would be a huge amount of work to change. I am looking for a transformation I can apply the the to a left handed camera to get a right handed camera?

It seems I need to “invert” the x-axis so it points right instead of left.

I’ve created a playground, where I would like to go from right to left by hitting space and returning to the original right by pressing shift:
https://playground.babylonjs.com/#Q0AQ45#3

This is correct and this is how we do it in the engine as well. We flip the x coordinate

1 Like