Is there a way to tilt the VR/XR camera for laying down mode?

When the xr experience is enabled, the world “up” is in +Y axis, same as me standing up in the real world as expected.

But suppose I want to create an experience for someone who is laying down. In that position they would mostly be staring up at the ceiling or sky and not able to see much around them without craning their neck. Is there a way to tilt the world to them by bringing the horizon up to their eye-line so they are more comfortable?

I thought one solution might be to have an invisible parent “root” mesh or transform node and then place every object in the scene as a child of that root so that I can rotate and even scale the root to the user’s preference. The problem with that approach is that it doesn’t fool the headset for other things. Like the teleportation feature has a circular plane that is drawn on surfaces that you can teleport onto, and those are still oriented to the XZ plane. And for a multiplayer networked game, any head and hand absolute positions that I’m sending to another client are still in the original world position, and not relative to the root world position, so I would need to transform them.

Is there a technique for accomplishing this feature? Thanks.

Hi Owen!

You can apply rotation on the camera after the first frame. Rotate the camera 90 degrees on the X axis (for example), and your base reference will change so the camera’s up vector will change. You can also set a parent to the webxr camera with the transformation you want.

Thanks! I will try this

1 Like