I'm creating an app for the Meta Quest2, where a user can walk in and out a room ( L shaped with an open door, nothing fancy ), which has been built based on a real life location, so the virtual environment ( built in Maya using technical drawings of the place ) match the IRL environment.
Now I'm having the following issue and I would like some advices:
While doing the room scale, I tracked both the inside of the room and a little bit outside the room ( in front of the door ) and set the pawn start location outside the room, at a specific distance from the door, so IRL I also have the same distance as the starting point of the pawn....as soon as the app starts, the pawn has a predefined orientation ( always looks towards the door ), while if I start the app and I'm not looking towards the door IRL, I have a misalignement between the virtual and IRL locations.
To temporarily solve this issue I created a 3d printed stand for the Quest2, so that it sit thight there, and I placed the stand in front of the door at a specific distance ( the stand is also placed on top of a pedestal to be able to have the Quest2 at eye level ), so that it matches the distance between IRL and virtual start location.
In order to sort out the orientation, I used one of the buttons on the controller to turn on the visibility of the room scale tracking area ( show/hide Guardian Visibility ), so that while the Quest2 is still on the stand, I can look inside the Quest2 and physically rotate the stand to match the orientation between the Guardian tracking area and the virtual environment, using the Guardian tracking area as a guide.
When the two environment seems to be aligned, I get the Quest2 from the stand and test it by walking inside the room, and with still the Guardian visibility turned on, I check if the two envirnoments aligned properly.
It works, but is not very user friendly, and if the stand is not locked in place after the orientation alignment, the entire calibration is messed up.
So is there a proper/different way to align/orient the Quest2 so that the IRL environment match with a virtual environment which has the same geometry?
Thanks in advance.
For anyone interested, here is an update of the setup.
I ended up building an aluminium frame and test the entire setup on location, and well it works!
First I built a designed a Quest2 holder using CAD software and print the prototype using a 3D printer, then I also create a big frame ( 1.6x0.8meters ) that will act more as a panel with a front panel with the company ad ( in the picture there’s still no front panel ) and on top of it there is the 3D printed Quest2 holder ( it is shiny because I just used a pint to make the print stronger, without any nice aesthetic paint on top of it ), where on one side you have a knob with a single hole, while on the other side you have a circular slot also with a knob, but if you unscrew the knob you can turn the 3D print so that you change the alignment of the Quest2.
The test went very well and using the setup to view the guardian boundaries allows to have a pretty good alignment between the VR location and IRL location.
The next step would be to eventually remove the frame and just have a hinged aluminimum bar with the 3d print attached, fixing the hinge on the wall, so that you can have the aluminium bar at 90° to the wall, do the alignment, and then lower the alinimium bar ( thanks to the hinge ) so that it’ll stay parallel to the wall.
I would try something to align a plane to another plane.
you would make 3 point using spatial anchor and then align the door with this plane.
this way, by aligning one plane you would align the entire scene (make the first plane the root of the entire scene)
its a virtual to physical world alignment, using spatial anchor that persists across sessions, so you dont have to do every time you start the app
I saw that you made a real scale map. I'm trying to do the same with engine engine 5. I scaled my room office from UE5. I would like to ensure that the quest 2 headset is always correctly aligned when starting the program. Can you help me please ? I don't know bueprint very well...
So you're going to replace the location/rotation of the Quest2 by using a Vive Tracker?
Because if so with the Vive Tracker you can achieve 100% precision, due to the fact that the tracking is optical and you cna have a specific tracker orientation, so you can control both and have them to be very precise.
Not sure if you cna override the Quest2 inside-out tracking and simply replace it with the Vive Tracker data...this would be an interesting experiment 🙂