Change Forward Direction

VR rooms are setup with a forward direction. For a long time I had accidentally set up with the wrong forward direction in my space its fine. But my game has that now built into it, and I need to rotate the player/change the forward direction to not annoy people. If I simply rotate the player spawn that works except the controllers are in the player pawn, and the vector math on them gets messed up. Is there any way to change the forward direction the player faces in VR? Can I select everything in the world, terrain, vegetation, everything and just rotate it 90? That sounds very messy. Either way its not easy to solve for me unless there’s another way.

is there any negative consequence for rotating the world/everything in it 90°? So Landscape and vegetation? I did it and it worked, but just worried if there’s anything I should be concerned about. Its was easier than trying to fix the blueprints issue.

Why can’t you just pull forward vector from the headset or the controllers themselves instead of trying to align the actors root to the world or the world to the actors root?

I should say the front not forward. So if you start a VR app it should have front as the direction specified in room set up. Mine was setup wrong and I started building my game that way. My VR Pawn has in it some geo that uses the world position of the controllers to make a vector between them. That gets messed up when you add world rotation to the pawn. So its Local offset after world translation. I would have to remove the object from the pawn and connect it from outside, adding more lag to it, which I don’t want. After trying a few options, I went with select everything in the world and all streaming levels that are objects, landscape, or vegetation and rotated it together 90. Re-baked lighting and it seems to have worked. Played through the game, seems fine. So while I don’t like that solution, Unreal seems to do a nice job with the transform of multiple selected objects, and it appears to have solved my issue.

How are you getting the world position of the controllers? If directly through their ComponentWorldLocation they should already adjust for their parents rotation when returning the value. If you are using another method that gets the local space rotation of them instead then you could transform them by their parent transform to get the corrected rotation.

the controllers adjust, the object I put between them didn’t b/c I was setting local translation and rotation, removed the counter for local space which I wonder why I made now, and set its world space fixed.