Jump to content

Aligning real world with VR


Recommended Posts



I’m developing a “hyper reality” project (in the vein of Void and Nomadic) in which we match a real set with tables and walls with a virtual environment. While we have a few tracked objects via Vive Trackers, the set items (like tables) are not tracked. You can see more about this project in the video:



After some tests we came to the conclusion that the position system of the virtual world isn’t accurate for this kind of project. When we turn off SteamVR and turn it on again the play area position isn’t the same as the last time. In order to resolve this issue we created a reposition system based on the position of the lighthouses in the game:


  1. Start the game and adjust the Steam VR rig position in the Unity scene: using the Vive controllers, check the actual position of real objects (like tables) in the space and then move the Steam VR rig until the virtual objects match the real ones.
  2. Write down the lighthouses’ current position in the virtual space.
  3. Close SteamVR and start it again. The Lighthouses will now be in a different position, and therefore the virtual objects and the real ones will no longer match.
  4. Readjust the Steam VR rig position so that both lighthouses are in the positions we wrote down (step 2), realigning the virtual and real objects. We’ve wrote a code to do that.


But sometimes the relative position between the two lighthouses seem a bit different even though they have not been moved, so this method isn’t as accurate as we need.


Is this difference when we restart Steam VR common?

Are there methods to avoid or reduce this imprecision? Is someone out there trying to do the same thing with any ideas on how to avoid this problem?


Link to comment
Share on other sites


I ran this by our developer team... According to them, you should see very little to no drift of the lighthouse/worldlocations between separate initialization instances of SteamVR and something else may be at play here. Your calibration process is the correct methodology to solve this issue and given enough calibration points (known starting points) and rigorous calibration methodology, the differences should be negligible and within precision tolerances that are negligible. Can you please elaborate further on how the positions of the light houses are shifting (and possibly provide example data)? 


One theory I have is that since your lighthouses are on tripods and not on fixed objects, the starting and stopping of the motors (as caused by SteamVR starting and shutting down) may be creating microscopic shifts in the angles that the lighthouse position. The shift could also be cause by the players moving around the playspace and their motion being transferred through the floor into the tripod. A tiny shift in it's position can translate to a rather large shift in how the sensor data. Have you tried this with more rigid lighthouse mounting?

Link to comment
Share on other sites


We did some tests in the last days and for some reason the position differences that showed up aren't as bad as the differences we had been having before. We’ve mounted our lighthouses on the walls, but the results didn’t change.


We can see that only one of the lighthouses’ position changes when we close SteamVR and start it again. These differences aren't enough to make the position of the virtual objects very wrong, something that happened many times in the older tests. We even substituted one of the lighthouses, but results are the same.


If the lighthouses continue to have these negligible differences it won't be a problem, but since we don’t actually know why it got better, we expect the problem will return.

I’m attaching a table with the positions of the lighthouses across several tests (closing Steam VR and starting it again). Each line is a Steam VR restart.




Link to comment
Share on other sites

  • 1 month later...
  • 10 months later...


I have been testing a smiliar set-up to your 'Hyper Immersive Prototype' building physical objects that open up different virtual environments upon being touched or 'entered': https://vimeo.com/275786426

I have been having the same callibration problems you describe and always fixed it manually by repositioning the Unity scene around the camera. I now have to build an other installation that has to work without being supervised and I was interested if you found a solution to fix the problem?

Many thanks for your help! 

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Create New...