Comparing the seated Vive and Rift CV1 experience in Radial-G

Because my body was complaining a bit after 2 days of room-scale madness, I decided to test the “seated” experience in the Vive today. We all know that room-scale with tracked controllers is a transformative experience by now, but there are still plenty of games best played seated. To be honest, I expected it to be quite comparable to the seated experience in CV1, though a bit worse overall. The reality is not that straightforward.

I performed this comparison based on the game Radial-G. Why? For one, it’s a cockpit game, so quite the typical seated experience. Secondly, it natively supports both the SteamVR and Oculus APIs. And thirdly, I already own it and enjoyed it a lot on DK2.

Ergonomics

No two ways about it, the Rift CV1 is both easier to put on and take off as well as lighter on your head. I slightly prefer the actual face interface (heh) of the Vive – the material is a bit softer and more rounded, but it doesn’t make up for the other ergonomic advantages of the Rift.

There is one use case however in which the ergonomic advantage of the Rift doesn’t hold: glasses. At least with my head shape and glasses size, the Vive (with its cut-outs) is basically just as comfortable to use with glasses as without them, while the Rift is far more of a struggle.

Field of View

Field of view was a hot discussion topic just days ago, but seems to have settled down a bit now that we know all the measurements. In the actual game, the difference is not massive. I’ve looked closely at what I can see in each headset just moving my eyes from the default position (right after reset) and here’s what it looks like with lines indicating the borders of my vision in each HMD (excuse the crude drawing):

As you can see, the difference is there in almost every direction, but only really noticeable at the bottom of the FoV. I found this additional viewing area towards to bottom worked to stave off motion sickness in this fast moving game, since you see more of your craft, but you can probably simply move back a bit to get a similar effect. All in all, I don’t believe the difference is as striking as a purely numerical comparison would indicate.

Tracking

Both of the HMDs tracked perfectly throughout all my testing in this game. Obviously a cockpit game is hardly a challenging tracking test, but I do have my lighthouses set up for room-scale and not seated stuff so I thought I’d remark on it anyway.

Image Quality

In terms of image quality, the only noticeable difference for me was that the contrast ratio on the Vive seemed higher. At first I thought that its black level was better, but someone pointed out to me that it could just as well be due to higher maximum brightness with the same black level. Since our eyes are relative measurement devices, the only way to be sure is to use some more specialized equipment.

Logically I know that the same amount of pixels must be spread over a slightly larger relative area on the Vive, but I’d be lying if I said I noticed that in this game, even in a direct (well, a few minutes delayed) comparison.

Optics

Here we get to the single most surprising and noteworthy part, at least to me. Radial-G is a game with a lot of bright spots on dark backgrounds, so the optical artifacts introduced by the 2 HMD’s fresnel lenses gain prominence. Here’s an impression of what these look like:

As you can see, the Rift generates a straight, smooth blur from the center to the edge, while the Vive spreads the same amount of “light leakage” (or even slightly more) across concentric rings.

Now, just looking at the image comparison above in isolation, there’s a discussion to be had about which one is preferable. Clearly, on the Vive, a larger amount of space is affected, but on the other hand this space is less severely affected. Personally, I’m not entirely sure which one I prefer.

Be that as it may, what I found is that this isolated comparison is both irrelevant and misleading. In a real game scenario, you very rarely have a flat black background and a single bright spot source. There will usually be at least something going on in the background, and more than one bright spot around. And this changes the visual impression drastically.

Here’s the exact same image, but with some level of background noise added to simulate that we rarely have nothing going on in VR except for one dot on a flat background. I repeat, that’s the same strength of the respective artifacts as above. With some background in place, the more dispersed artifact on the Vive becomes almost completely unnoticeable, while the more focused glow on CV1 is still readily apparent.

This image comparison might look extreme or artificial, but it really does reflect exactly what I observed in the game. Given that, I find the type of artifacts produced by the Vive highly preferable in the general case.

Public VR Demonstration using Rift DK1

I rarely post about anything work-related on this blog (the last time was over a year ago), but I really wanted to write about this one. I’ve been a huge supporter of VR and the Rift since before the kickstarter, but the overwhelmingly positive reception when I had the chance to use it in a public demonstration still surprised me.

Background

There is an annual event at Austrian universities called the “Lange Nacht der Forschung” (Long Night of Research). Basically, for one evening/night – starting at 17:00 and going on until 24:00 – the Universities prepare demonstrations, talks and interactive sessions about research for a general public. It’s (surprisingly?) popular, with 136500 visitors this year. There’s a great variety of visitors, students, families with their children, and even seniors.

Our Demonstration

This year, our group was asked to do a demonstration again. Since I wanted to do something which is both related to our current research and engages people I had a pretty hard time coming up with ideas. In the end, I settled on taking the result of one of our compiler analysis methods (designed and implemented by Herbert Jordan) which generates a Petri net representing the parallel execution of a program, and visualizing it in VR using the Rift.

I had a prototype up and running using OpenSceneGraph, but with the recent release of UE4 with licensing for mortals, I decided to try it using that. With just a bit over a week to go (and, it turned out, a few graph layout papers to read and 3D models to create in addition to getting used to coding for and working with a huge engine from scratch) it was a tight squeeze, and quite exhausting, but I completed it in time.

If you can read German you can find more detail here. Basically, it’s a set of nodes (2 types) floating in space, connected by “bridges” representing graph edges, and with pillars showing the ID of the related program node/construct, as well as (optional) “monitors” showing the associated code for e.g. region constructs. Here’s a screenshot:

Screenshot of the Visualization (Non-VR mode)

Screenshot of the Visualization (Non-VR mode)

For the actual demonstration at the event we also had a 30″ screen mirroring the Rift output set up, so that people could see what’s going on, as well as a copy of the poster I linked above to explain the context of what was being presented.

The Reactions

Now we get to the part which is actually interesting. I was really curious how these “normal” people would react to the Rift. I am happy to say that the overall reaction was much more positive than I expected, despite all the technical shortcomings of DK1. We had a group of people watching and waiting for their turn for the entire duration of the event (so 7 hours, actually closer to 7 and a half if you take all the time before and after the official start into account), and probably around 250 people using the Rift.

We had a wide range of visitors over all age and gender boundaries – with families, normally it would be the kids trying the Rift first and then convincing their parents or grandparents. Here are a few photos:

Some remarkable incidents and things of note I observed:

  • We actually had to reassure people multiple times that “we’ll still be here for 5/4/3 hours” during the most crowded periods.
  • Upon it being explained that importing DK2 to Austria will cost about 400€, most people were surprised at how inexpensive that is. One particular remark I remember is a boy (probably elementary school age) exclaimed “Wow, that’s 100€ less than the new Xbox!”.
  • A young woman in her early 20s telling her boyfriend “we need one of these at home” after walking around in the demo for 2 minutes.
  • More people recognized the Rift than I expected. I’m sure some of that had to do with the Facebook deal and the reporting around it.
  • You could easily tell if someone who tried it was familiar with twin stick FPS gameplay. Gamers would zip around using both sticks, but often fail to move their head and just look at stuff until prompted to do so. On the other hand, non-gamers would turn exclusively using their head/body, and be in danger of getting wrapped up in cables.
  • “Mom, can I get this for Easter?”

That’s it, pretty much. After this exhausting but fun experience I’m more certain than ever that VR will not just become big, it will do so very quickly. Oh, and I’d like to thank Philipp Gschwandtner for helping me with the demo, and for taking all the good pictures you see in the gallery above. The bad ones were taken by me.

Oculus Rift

Two days ago I received my Oculus Rift developer kit. If you’re unfamiliar with the Rift, it’s an affordable Virtual Reality headset that had a successful kickstarter for developer kits last year.

My kit had a pretty long journey, going to Australia first. I used to think that people (particularly in the US) mixing up Austria and Australia was just a myth, but it seems like it actually happens:

Mislabeled Package

Tracking Information for the UPS order

Tracking Information for the UPS order

But hey, all is well that ends well. It’s a really nicely packaged kit, and includes adapters for anywhere on earth and 3 times as many video cables as you need:

Box

You can find much better pictures of exactly what’s inside (and the great box!) elsewhere on the web.

Sadly, I don’t have much time to do development for the Rift or even much testing right now, but here are my first impressions:

  • It works! When you first put it on and look around, it really feels like an entirely new experience. I had a few people at work try it today, and all were really impressed as well.
  • The resolution is low, but not as bad as I expected. I think with the consumer version’s planned 1080p resolution and really nicely anti-aliased rendering, we’ll be fine for a while.
  • The pixel switching time of the current display is too long. Ideally, I think it should use something like an OLED display, with instant response.
  • The headtracking is really fast, I didn’t notice any perceptible delay.

I just tested using the “Oculus World Demo” included with the SDK, and I noticed that the reaction speed and even the blur with head movement seemed significantly better with the windowed fullscreen mode instead of the “real” fullscreen mode. I’m not sure why this is the case, it could be that in real fullscreen I had VSync on.

Anyway, I hope I get more time to play around with it this weekend.