Putting the Reality in Virtual Reality
RoomShift creates physical copies of virtual environments with the help of a swarm of robots.
Virtual reality (VR) headsets are able to create realistic, immersive experiences that leave a user feeling as if they have been transported to another place. At least until the user attempts to interact with the virtual environment, that is. Deciding to take a seat in a virtual chair would be a disappointing experience that ends poorly.
Current solutions to this dilemma typically take the form of wearable devices that simulate haptic experiences on the hands, or provide some form of force feedback. While these types of devices have mobility and portability advantages, they are not well suited to simulate an entire virtual environment. RoomShift was created by a team at the University of Colorado Boulder as a novel technique to simulate complete virtual environments.
RoomShift makes use of a small swarm of nine Roomba Create 2 robots. The robots are fitted with scissor lifts and weight-supporting casters that allow them to lift a 22 kilogram load vertically. To move a piece of furniture, or other object, a robot positions itself underneath the object, then extends the scissor lift. After moving the object to the desired location, the scissor lift retracts to complete the operation.
An optical tracking system with 20 infrared cameras is used to keep track of RoomShift robot locations. This system identifies retroreflective spherical markers affixed to bars on the robots, and can provide position information in six degrees of freedom at sixty frames per second. A simple path planning algorithm provides the instructions the robot needs to move from one point to another, while avoiding obstacles. A server processes the tracking data and uses it when rendering the VR scene in the A-Frame WebVR framework. This VR scene is transmitted wirelessly to an Oculus Go headset.
RoomShift can support several basic types of interactions. By tracking the locations of objects, the user can physically move them and see that change in location reflected in the virtual environment. The system can also give a feeling of teleportation by moving distant objects near to the user β effectively recreating a distant scene around the stationary VR user. RoomShift also gives a user the ability to virtually move objects, for example by pointing at them and dragging them to a new location the objects will physically move in response.
RoomShift looks like it would be lots of fun to play with, but the expensive equipment and associated setup is likely to keep this out of the hands of casual VR users, at least in the near future.