Skip to content

The Configuration file

VR Lab of University of Applied Science Ingolstadt edited this page May 9, 2019 · 4 revisions

The configuration defines which computer renders which part of the CAVE.

The first entry is the master with the following settings:

  • the ip of the master-computer
  • the port, which will be used to talk with the slaves
  • the starting position of the origin

The origin will be the center of your CAVE (When the tracking-system returns (0,0,0) as position you will see everything from this point). If you want to move around in the game, then you will have to move the origin around.

The next entrys are the slaves, each with the following settings:

  • the ip of the slave-computer
  • which eye will the camera represent for stereoscopy view (left/right)
  • how should the camera be rotated to look in the desired direction
  • the screenplane with:
    • the position of the screenplane the camera will look through
    • the rotation of the screenplane (currently not needed/working)
    • the scale of the screenplane

If the eye is configured as left/right, then the camera will be moved slighlty to the left/right. The rotation depends on the wall that this slave will be rendering.

  • For the wall in the front, the rotation has to be (0,0,0)
  • For the wall in the left, the rotation has to be (0,-90,0)
  • ...

The screenplane position and scale depends on the origin of your CAVE. For example:
The CAVE is 3 x 3 x 3m and when the tracking sends us (0,0,0) then we are in the middle of the cave, but on the ground. As scale we use then (3,3,3). For the wall in the front, you would have to move it 1.5 meters to the front and 1.5 meters higher to place the screenplane in unity just like the real plane of the CAVE. To achieve that we enter (0, 1.5, 1.5) as position and the asymmetric-frustum-script will do the rest for you.

Like that you can model more/less screens, or screens of different sizes.

Test client-server scenario on single computer

  • It's possible to use one computer for a distributed app with one master, one slave.
  • In node-config.xml configure the master with IP address "localhost". Additionally, add a slave with IP address 127.0.0.2.
  • Build the app.
  • The master is started with the Unity Editor's game mode.
  • The slave is started with the built exe-file. In the *_Data/StreamingAssets/node-config.xml of the slave the IP addresses must be exchanged (localhost <-> 127.0.0.2).

Clone this wiki locally