RenderingPipeline

from geometry to pixels

Giving Oculus Rift demos: Best practice

Even though Virtual Reality has been around for a few decades, many people have not yet experienced good, immersive VR as it is available today with the latest generation of head-mounted displays (e.g. the Oculus Rift or Sony Morpheus). This can be a strong experience but if it is presented badly, it can do more harm than good.

Here I want to share some experiences I made while testing VR systems as well as giving demos to others. My observations are based on the (about) 850 Oculus Rift DK1 demos we gave at gamescom in 2013 and the 1496 Oculus Rift DK2 demos we gave at gamescom 2014. In addition to that we gave demos internally as well as publicly to a few dozens of people at our university in Aachen. So if you are working on a VR game or application and want to show it off to people who have never used a HMD, some of the following hints might help you with that.

Oculus Rift DK2 demo at gamescom 2014

Oculus Rift DK2 demo at gamescom 2014

As VR can be a strong experience, you might be tempted to throw the most intense demo or the most intense part of your game at a new user to generate the biggest “wow effect” possible. However, I would strongly advise against that! This can be seen in a lot of Youtube videos and while it might be fun to watch seeing people nearly falling over in a roller-coaster or getting scared to death in a horror game – for the person without any VR background, it might not be too pleasant! The last thing you want as a response from a potential customer after you presented your application is: “Intense demo, very immersive, but now I feel dizzy, so I can’t imagine using your product for more than 5 minutes, sorry.”

When I got my first Rift demo of the pre-Kickstarter “duct-tape prototype” back in 2012 I was playing Doom 3, standing up, without positional tracking and some drift in the rotational tracking. I still liked it much better than any VR demo I had seen before (not counting the CAVEs I tested ;-) ), even though I felt a bit sick afterwards. So if that convinced me to back the DK1, why should we not give VR demos this way anymore?

Some people react very different to VR than others: While I was impressed by a demo which was technically inferior to anything we have now, some persons still get problems with motion sickness in a DK2 running at solid 75Hz, seated in the Oculus “Desk” demo – within seconds! I’m not making this up, I’ve seen it and while such strong problems with VR are very rare, it shows the wide bandwidth of possible reactions.

So don’t plan a big, intense VR scene to start of your VR demo with a big “wow-effect” and a then a longer, slower part to explain your concept – your participant might not even get to the second part!

Our demos

When we started to show off our own work for the DK1 at gamescom in 2013, we didn’t have the experience we have now. We are also limited by the amount of time we can invest per person and we only want to show our own demos and not external games – at the end of the day we want to show what our students do and lern at our university and not a 3rd party hardware product.

We had some demos from our research and some games our students implemented. To select the demo we wrote a small application where you are located in the middle of a space- themed cube-map with floating images of the demos. It’s good to adjust the device and getting a feeling for the HMD without any camera movements or things happening in the world.

Rift demo launcher

Rift demo launcher: Select and start the demo with a gamepad. If the user looks left, he/she sees a manual of the launcher, to the right is a manual and description of the demo located.

The “slowest” demo was a rendering of the internal of the Aachen cathedral based on laser scans (see below). The user could look around but was not moved automatically. Unsurprisingly, we got no complains about dizziness or motion-sickness from the over 300 people testing this demo in 2014 (sadly I don’t have exact numbers for 2013). While this was our most advanced research related demo, it was also our easiest to digest Rift experience. If I had the time, I would now start everyone with this demo.

One student demo was set in an underwater cave with very nice rending, sound and a lot of small bubbles around the player which added a lot of immersion and 3D feeling to the game. The goal was simple: Find a way out of the cave before you run out of oxygen (or the big fish eats you) – or just swim around and enjoy the view. However, as relaxing as this might sound, the dark, small underwater cave can feel quite claustrophobic! It can be quite impressive to beginners, that a harmless device as the Rift can create such strong feelings – but it can also scare people and want them to never touch your game again. So be careful and don’t force new players into this kind of experience without a clear warning!

Our most played game was a roller-coaster (video) implemented by two students. Roller-coasters are interesting Rift demos: The player does not have to learn any controls so even non-gamers can start instantly, the camera gets moved on a relative predictable path and the feeling of the ride can be very intense. But intense also means that it can be too much for the participants. In both years we had three people in total who had to stop the ride in the middle. The percentage is low but keep in mind that we had mostly gamers at these events and each demo only was 3-4 minutes long (depending on the application). Some people were feeling a fear of heights on the ride as the looping can be quite big. In 2013 the players sat in an arm chair and a few each day grabbed the chair to make sure they won’t fall off… Similar to claustrophobia you can experience acrophobia in VR!

One more example

Let’s take a look at one example of said Youtube videos: TheFineBros are producing Youtube videos of elders getting confronted to technology and one of there latest videos shows them trying on the Oculus Rift for the first time:

They start of showing Tuscany, which is fine, because they can focus on getting used to the device while they do not have to do anything in the virtual environment and the environment looks harmless and familiar. It doesn’t take long after the presenter took control over the movements before the first participants got dizzy – remember not to move the people around in VR, never take control of the camera! If the persons you want to present your VR game to are not comfortable with controlling the application with a gamepad, just change the location of the virtual character instantly – “beam” them to a different location. This can be a bit disorienting, but at least won’t make them sick.

“It’s not real” – “My stomach doesn’t know that!”

The next demo was a roller-coaster which, as we have discussed, is not a good demo to start with. In addition to the problem that this can creates motion sickness, one person also expressed a fear of heights! Next they are promised a relaxing room and no more sickness inducing motion, but in fact the next demo is a horror game…

“I’m impressed by the technology, but somebody else can buy it.”

In the end the test subjects were impressed by the device itself, no wonder considering that they got frightened and got a physical reaction in form of sickness and dizziness. However, they most likely won’t keep the demo in good memory and will probably not understand, why anyone would want such a device.

What NOT to do

The worst demo I’ve seen so far was from another educational institute (which I won’t name here) at gamescom 2014. They showed off a 3rd party roller-coaster, which in itself was questionable as this organisation claimed to teach game development – but did show 3rd party software on 3rd party hardware… But the real problem was that it was shown on a too slow notebook running at about 30 FPS, which is way too slow for VR! On a 2D screen I can’t see the difference between 30 and 60 but inside of the Rift it is very obvious. Normally I have little problems with motion-sickness but this was too much for me.

Another VR demo using a smartphone and a Durovis Dive had a similar problem: it was too laggy. The frame-rate seemed ok but the latency was too high. Always show your demos at the native frame-rate of the HMD (60 for DK1, 75 for DK2) and check the motion to photon latency. If you need to, reduce the resolution or other visual effects, but never reduce the frame-rate! I know that it hurts to reduce the quality of the rendering, but there is no way around it (maybe in the future with better (asynchronous) time-warp, but not now).

One DK1 demo at gamescom 2014 was a self made game where you had to stand on a Wii Balance board – IMHO a very bad idea as you have to move your body to control the game but your head movements are not tracked in DK1 resulting in very quick motion sickness. I’ve seen a few people nearly falling over on this one. In addition to the questionable setup, the rendering was set up for a different (lower) resolution as the Rift itself, not only resulting in a poor image quality with aliasing but also a slightly different aspect ratio. This results in a small sheering effect when rotating your head around your optical axis.

Don’t get me wrong here: Trying out new input devices is great, even messing with the rendering on purpose can be interesting and insightful – but be careful who you force into this kind of experiences! Also, never argue on the basis of “It’s not perfect but it works for me, so it’s fine” – other might react more sensitive to small imperfections in the setup (I’m not talking about graphical quality, but latency, stable frame-rates, correct projection matrices etc. v-sync tearing lines).

Another demo at gamescom was a horror game where you had to escape an old hospital in a wheelchair. You sat in a real wheelchair and used the wheels as input devices. Two guys added “force-feedback” by shaking the chair, blowing wind in your face or spraying water at you. All in all a very cool demo but for first-time VR users it might be too much. Horror games in VR can really be scary and immersive.

Some tips

Here are some tips in case you want to show your demo to someone:

  • Check the Oculus VR Best Practices guide: You can find it here. It helps to avoid common mistakes and is constantly updated.
  • Make sure your hardware works well. Your demo should not drop any frames, make sure to enable VSync as tearing lines can be very distracting! In case you use a DK2, make sure the camera is positioned about 1.5 meters away from the user, if she/he moves out of the tracking area, the lost tracking will be very uncomfortable (for some people more than for others!). Placing the camera on top of a PC screen is often to near to the subject – it might work but the tracking area is too small and people tend to bump into the monitor with there head… The cameras have a screw mount, a bean bag and a camera tripod work best IMHO.
  • Let the users sit down. Standing up in VR – especially with the good tracking of DK2 – can create a very strong feeling of presence (Tuscany standing up is amazing!). However: This is a bad idea for a first demo! I tried it with a couple of coworkers (I wouldn’t test this with external people), not everyone liked it. When sitting, the movement of the head is also restricted which helps the tracking. A lost tracking might not be too bad for you, but I have seen people getting really uncomfortable whenever the positional tracking gets lost! It also breaks immersion instantly.
  • Get the right lenses. In 2014 (DK1) we switched lenses a lot and in 2014 (DK2) we had two demo stations which also reduced the lens changing as we often had one station with the right lenses prepared. An astonishingly huge number of people with glasses don’t know whether they are far-sighted (A lenses, same for normal vision) or short-sighed (B lenses in DK2). After a few dozed demos for people wearing glasses you get really good at estimating the lenses needed by looking at the glasses (if the face looks wider behind the glasses, the person is far-sighted, if it looks smaller, near-sigthed).
  • One note on glasses inside the Rift: In 99% of the cases I insist that no glasses are worn inside the Rift as I don’t want our Rift lenses to get scratched (DK2 lenses are very sensitive) but more importantly I don’t want any glasses to get scratched and be held responsible for this. Your mileage may vary.
  • “Clicky-adjustment things”: Adjust the distance of the screen (and the lenses) to the viewers eyes, for some this can help to reduce the blurriness significantly. If the sharpness of the view was ok at the most extended position, we used that.
  • Setting the lenses used and the adjustment level in the SDK and calibrating the IPD: This is the most problematic part, calibrating the IPD is time consuming and probably not what you want to do for 200 demos a day. The participant might also get bored by this so we did not do this step at the gamescom (but used the most extended position of the “Clicky-adjustment things” and an average IPD). However, if you have the time and want to give longer demos than just a few minutes, I would suggest going this extra mile as a well calibrated HMD can reduce the simulator sickness.
  • Inform them what they will experience. You might have dark scenes in your demo, or small rooms or giant spiders or high bridges to cross. Even if you have no problems with those things, your participants might have and might react stronger to VR than you (you might be surprised how many people try to grab something in VR if they don’t hold a controller!). Don’t trick them into a horror demo without them knowing. Think about it: Horror movies also work when you know that you watch one!
  • Start slow. Give the participant some time to get used to VR, if your demo is too intense, start with the Oculus demos. Ideally somewhere where you just need to look around without much happening. At the gamescom everyone started in a demo select screen which was basically a skybox of the space with some icons of the demos floating in zero gravity. And then even our roller-coaster started with a slow two minute ride with just one small looping before the wild part started – but this might already be too much!
  • Give them a break. After the about four minutes in our demos, most people were not sick (yet?) but impressed by how immersive the HMD was. Maybe schedule a break after (a maximum of) five minutes before you go on with a more intense part of your demo. Breaks do seem to reduce the motion sickness.
  • Even if your test subjects are familiar with VR, they are not as familiar with your awesome demo as you are! I used and developed for the DK1 for a couple of month before I tested the “FullHD prototype” at SigGraph in 2013 and the demo I tried was a well made scene in Unreal where all I could do was to look and walk around – it was still as impressive as my first demo one year earlier (and even the DK1 wasn’t the first HMD I used…).
  • Have a non-VR backup: Maybe your test subject is very sensitive to motion sickness but still wants to see the rest of your demo, maybe she/he does not feel comfortable with a specific part of the demo and wants to skip it. Have a backup ready to show the demo without a Rift (more than the distorted view on a second screen).

It’s important to note that we still know very little about good consumer VR. In a few years (with better hardware) the best practices might look totally different. If you have additional experiences you want to share, add them in the comments!

, , ,

8 thoughts on “Giving Oculus Rift demos: Best practice
  • Very interesting article.

    I’ve never tried VR or done development with it, and I’ve got a question though:
    I find it interesting the Rift can adapt to far and short sighted eyes.
    However it’s common that one eye is substantially healthier than the other, or have different eye conditions. As an example, one of my friends has so little eyesight in one of his eyes that he cannot enjoy 3D movies using 3D glasses.

    Does the Rift have/allow separate lenses for each eye, or is it the same for both eyes?

    • Robert says:

      Hello Matias,

      the DK2 has two lenses, one for normal vision and far-sighedness and one for short-sightedness. Normal and far-sighedness use the same lens as the effect of the lenses is to let the eyes focus infinitely far away, so it won’t stress the eyes but it also means that far-sighed people won’t need special lenses. Small differences in the strength of vision are no problem in the Rift, I am short sighed with different values per eye and I use the same lens on both eyes without a problem. Keep in mind, that the resolution of the screen is lower than the real world so you won’t need perfect vision.

      Can you use two different lenses? Mechanically yes, but the software needs to support this and the current SDK doesn’t (two slightly different projection matrices would be needed) – I’m not sure how well it would work. Right now you should use the same lens on both eyes. Using glasses or contact lenses is an alternative!

      What about little to no eye sight on one side? I had a few people with just those conditions and they say the Rift works well – in contrast to 3D TVs or cinemas which don’t work at all. Here’s why: In a 3D movie you get two images but you can’t move your head (well you can. but it won’t change what you will see). If you have very bad vision on one eye, you will only see 2D just as with a normal movie. In a HMD however, the rendering gets adjusted to your head movements and rotations and these visual 3D hints (parallax for example) are what help you to estimate the depth of a scene. This is true for people with 20/20 vision as well: the brain uses a lot of different 3D clues, not just the two stereo images. With an HMD we can simulate more of those clues than with a 3D movie (but still not all of them: you can’t focus of different depth, we would need a light-field display for this).

  • Priyadarshi Sharma says:

    “On a 2D screen I can’t see the difference between 30 and 60..”

    You are kidding right?

    • Robert says:

      Hi Priyadarshi,

      no, I’m not. But let me elaborate this: First, *I* can’t see the difference (in say 95% of the cases), I am aware that other are more sensitive to the frame-rate in 2D as well and I don’t claim, that no one can see a difference.

      Secondly, I assume a (relatively) low-latency rendering in 30Hz, if we talk about a long pipelined game engine which gets multi frame latency, then I can *feel* the difference as well. Input to motion on the screen feels laggy, however, if I’m not the player but just a spectator, I (most of the time) don’t see a difference.

      Also, read my comment like this: If even a guy, who can’t tell the difference between 30Hz and 60Hz in 2D notices the frame drops in a HMD, then what will happen to (the stomach of) a person who sees the difference even in 2D? My take-away message would still be: Don’t drop frames in a HMD!

  • Ugo says:

    Hi Robert,
    I am thinking to do an empirical evaluation with my students and controlled experiments to understand which are the best tips, practies, apps (in terms of 3D application) for Oculus Rift. As for instance, what are the scenarios where motion sickness is more evident?

    Do you think that studies of this kind could be useful?

    • Robert says:

      Hello Ugo,

      yes, I think whose studies are interesting. The (consumer) VR hardware is rapidly getting better and test results gathered with older hardware might not be applicable anymore to newer generations with better tracking and lower latency rendering (as those are big factors for motion sickness). It’s important to make those tests with enough people and a heterogeneous group – an experiment make with 10 male students, one female student and 3 staff members wont tell us much about how the average person will react to VR…

      If you do such studies and have some results, I’d be happy to hear from it again!

Leave a Reply

Your email address will not be published. Required fields are marked *

*