Inexpensive VR (OSVR Razer HDK)

Tax refund time came around, and I took the opportunity to acquire one of (the only?) the OSVR-centered VR headsets, specifically the Razer HDK 1.4.
I knew this wasn’t a consumer-level product, but I’m quite the early adopter, and community supported projects are something I’m familiar with.
In the HDK package, you get:

  • The Headset
  • The Control Box (with convenient belt clip)
  • Cables (so many wires omg)
  • IR Tracking Camera (with nifty gorillapod-style mount!)
  • Power Brick
  • Connection Guide
  • Nothing Else

Some starter software in the box would have been nice. Whatever.

I hook it all up, and head to the OSVR site for the requisite downloads. I grab everything that seems relevant, OSVR core installer with Razer Synapse (cool, I guess?) and drivers.
…now what? Nothing really seemed to work.

Google a bit, and I come across a Reddit thread (yes, reddit, I know, eh) but it started to point me to the right direction. I fought with OSVR core and SteamVR drivers for hours, with SteamVR insisting that it put the compositor on my primary display, instead of the headset… until I finally gave up and followed the instructions on the thread exactly, using the precise versions of the OSVR core and SteamVR drivers they specify, along with the noted SteamVR build.

It worked.

I pulled up Elite: Dangerous, and after some FOV tweaks to keep objects from disappearing, it really actually worked.
I started up NewRetroArcade, and holy crap I was walking through a small 80s arcade, music pumping from a boom box in the corner as I went up to a Bubble Bobble cabinet and started playing.

Here… is where things really start to go south, however.

First off, I’m going to divulge that my setup is not optimal for VR, even less though than I thought it was. People were originally using GPUs below the GTX960 for DK1 and DK2 development, so I thought my laptop’s GTX960m wouldn’t really be that bad.

I was wrong. Even on nearly lowest settings on NewRetroArcade, I couldn’t get above 50 frames per second, and game emulation was slow and choppy.
Elite: Dangerous was amazing if all you did was look around, but as soon as you started to do anything like move or maneuver, the stuttering and jerkiness was unbearable.
Descent: Underground was, while it worked and looked lovely, utterly unplayable even at low settings.

And that’s about where my testing ends, for two reasons.
My laptop, a lovely Dell XPS 9550, has a dual-GPU setup, with the Intel and nVidia graphics cards working in tandem. The Intel handles actual display of everything, the nVidia will render and then hand off to the Intel framebuffer for output.
This makes direct rendering to the headset impossible, which a lot of Rift (and OSVR) software would use.
As such, I can’t even use OSVR-targeted applications that use direct rendering – the best compatibility is actually SteamVR on this system, so I’m limited to that.
NewRetroArcade will use the SteamVR compositor as an Oculus compatibility layer, since SteamVR seems to implement some subset of Oculus’ OpenVR API. Don’t know for sure, I just know that it worked once I got SteamVR set up. (Please open-source NewRetroArcade, digitalcybercherries!)
Anything that uses direct rendering though, or direct access to the Oculus runtime, nope. The former is a problem with my specific setup, the latter is due to not having a compatibility layer for the Oculus runtime.
Often, the issue is both.

So, problems with the Razer HDK/OSVR specific to my configuration:

  • No direct rendering
  • GTX960m GPU really just not enough
  • damn laptop doesn’t have enough USB ports, jeez. (1 for the headset, 1 for 360 controller, 1 for.. crap out of ports)

To be fair, the control box for the HDK has a USB 3.0 port from an internal hub to be used with a controller or some such (and a headphone jack!) but for some reason my controller didn’t want to use it.
All testing was done without the use of the IR positional tracking. As such, I did experience some significant yaw drift, and issues with headset centering (no numpad on this laptop to tell SteamVR to recenter). I imagine using the included IR camera would alleviate this significantly.

Now, problems with the HDK (supposedly) not specific to my rig:

  • OSVR Server (that provides telemetry to client applications like SteamVR) using >30% CPU on a Skylake i5. Seriously, what the hell.
  • Sizing. I had to pull the top headstrap out almost all the way, and the elastic side straps out as far as they would go. Great for women with smaller heads, I’ll give them that. Not so great for larger-built women or men.
  • The lenses. Christ, the lenses. Basically, you leave them as far out as they can be, and hope you can focus. Any adjustment inward pressed the lenses against my orbital bone, and reduced the field of vision. I’ve decent vision, so it wasn’t a big deal. For anyone that needed adjustment, this is nearly impossible. My wife would not be able to use this comfortably.
  • The nose rest. This headset is surprisingly heavy, and there is no padding on the nosepiece whatsoever. It’s bad enough that my daughter complained of discomfort after wearing it for a mere 2-3 minutes. (while she gawked at the view from the cockpit in Elite: Dangerous)
  • The screen. It’s a 1080p OLED display, but the Pentile subpixel arrangement harkens back to the horrible LCD of the Turbo Express, where text wasn’t readable at all unless it was white. It doesn’t feel like an HD display. Text is difficult to read, targeting indicators in Elite are hard to distinguish. The diffusion grating included with the HDK1.4 is supposed to improve the “screendoor” effect over the 1.3 and DK2, but honestly it just kind of blurs the image. In moderately low-contrast images it works well enough, but not enough to help text readability. This is where Playstation VR, with its properly RGB-striped subpixel arrangement will blow anything this level out of the water.
  • Software compatibility. As it is, you can use this with OSVR-compliant programs, and in a limited capacity, SteamVR. From what I’ve been able to gather, there is no real support for Oculus-specific software. I can’t play Hawken with this (although I’m sure it’d be awesome). You can use Oculus hardware with OSVR-compliant software, however.

Vireio is supposed to support OSVR and the HDK natively when version 4.0 is released sometime soon, which opens up a lot more games to the HDK.

That’s pretty much it. I’m glad I hadn’t sold my little gaming rig, it’s got the desktop GTX960 which might be a little better, as well as having support for direct rendering. I’ll have to save up for a 970 or 980 for it, if I can find one that’ll fit in the miniITX case.

The OSVR Razer HDK is exactly what it advertises to be: a headset for developers, and people willing to hack at the system to make it work. It is *not* a consumer-level product.
If you’ve got a desktop with a 970 or 980 and want a cheap way to get into VR on Elite: Dangerous or Descent: Underground (what’s up with all the colons?), this might be a good option, if you can follow specific instructions.

I’ll definitely be keeping this headset around though, and due to the open license of the hardware I’ll feel free to modify it as I see fit for comfort. Eventually, I think it’ll be a decent entry point for some for VR, and hopefully OSVR as a spec will start to gain some momentum, bringing even more compatibility to the platform and to less-affluent gamers as a whole.

Because right now PC gamers, Sony’s got you beat for quality/cost of entry.

tl;dr: If you want VR, spend the (lots of) extra money and get consumer-grade VR, and a rig at minimum spec to run it. Just because you can run current games at 1080p with settings mostly cranked, doesn’t mean you can effectively do the same at even low spec on that hardware.
SteamVR support is currently the only thing that makes it really usable. With Oculus having so much of a native foothold in PC VR, even though this is spec’d at DK2 levels, the software is just not there to make it work with DK2-targeted games.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.