The Definitive Guide To Mastering Open Source Virtual Reality

Jul
16

The Definitive Guide To Mastering OSVR – Open Source Virtual Reality

Virtual Reality has been available to consumers on PC after years in development. While the system requirements can be a little daunting, new mainstream video cards like the Radeon RX480 and upcoming Geforce 1060 are helping to ease the pain on both owner’s wallets and their system’s power supplies. When it comes to the choice of headsets potential VR early adaptors have quite a few options – there are the rather expense HTC VIVE and Oculus Rift, probably the two biggest names in Head Mounted Displays, but other alternatives also exist. You can get a comparable experience out of mid-tier headsets like the Razer HDK and other Open Source VR-compliant devices that will be just as immersive without handing over an entire month’s rent.

Master Chie...... nah, it can't be.

The HDK Versus The Competition

From a technical standpoint Razer’s current Hacker Development Kit (HDK) V1.4 won’t go blow for blow with the hardware on offer from the big names in the VR space but what it does provide is a stable and enjoyable VR experience complete with 3-Dimensional positional tracking at almost half of the price of other VR solutions. It should be noted that the HDK, as it’s name implies, is aimed primarily at developers & hardware hackers who are comfortable getting a little dirty with the small parts that make the device work.

Razer HDK V1.4 Oculus Rift CV1 HTC VIVE
Screen Resolution 1920 x 1080 (960×540 per eye) 2160 x 1200(1080×1200 per eye) 2160 x 1200 (1080×1200 per eye)
Screen Refresh Rate 60HZ 90HZ 90HZ
Positional Tracking Yes Yes Yes
Room Tracking No No Yes – via Lighthouse modules
Open Source Drivers Yes No – Closedcommercialdrivers No – Closedcommercialdrivers
Steam VR Support Yes * With additional software download Yes – out of the box support forSteamVR Yes – out of the box support forSteamVR
MSRP $299 USD $599 USD $799 USD

 

Setting Up Your HDK Step 1: Getting The Core Drivers

Using the OSVR HDK isn’t as easy as simply plugging the headset into your computer and expecting it to work. You are going to need one of two packages in order to make use of your OSVR – either the “OSVR Core” package which includes the server software needed to connect the headset to your PC or the “OSVR Runtime Package” which includes the aforementioned OSVR server but also drivers, an IR tracking program designed to test the infra-red camera and “Direct 3D demo” which is an interactive simple demonstration program designed to make sure the headset is working correctly.

Snag either the full runtime package or core builds right here.

SteamBlog

Setting Up Your HDK Step 2: Steam VR Integration

SteamVR integration, that is playing games on the OSVR headset using Valve’s open API approach to VR isn’t as easy as downloading the SteamVR package, but it is pretty painless if you can follow some simple steps.

  • Make sure your Steam install is up-to-date and that you are logged in.
  • Go to Library and then select “Tools” and search for SteamVR.
  • Install the standard version of SteamVR package – which is a 1100 MB download.
  • Download the OSVR SteamVR plugin from the project’s official GitHub page.
  • Within the directory structure of the OSVR SteamVR plugin zip file find the SteamVR-OSVR/lib/openvr folder
  • Extract the OSVR folder to %ProgramFiles(x86)%\Steam\steamapps\common\SteamVR\drivers\osvr\bin \win32″ if you are using the default Steam file structure.
  • Hook-up your VR headset, Run the OSVR server and get ready to enjoy some great VR content.

Fallout4_VR

Optional Step 3: Headtracking and SBS (Side-By-Side) For Non-VR Games

If you are looking to experience some of your favorite titles in Virtual Reality but they don’t natively support OSVR/SteamVR you have a few choices to make your game of choice playable on your headset. Essentially there are two components that go into this: ensuring your content is displayed on the headset correctly and adding in optional head tracking to the game so that your view moves with your headset in first person games, for example.

For Viewing Content:

  • Steam packs in a free “Steam Theatre” mode that you can activate with any non-SteamVR game by left clicking on the game in your library and selecting “Play In SteamVR”. The SteamVR theatre essentially makes it appear as if your content is being displayed on a large screen in front of you.
  • Use a paid program like Tridef Ignition to split the image into two distinct halves. As of the writing of this guide Tridef does not support “direct mode” rendering – that is sending the image directly to your headset, you’ll have to display content in “extended mode”. Tridef also does not support lens distortion so your image may be cut off when viewed through the OSVR without some sort of barrel distortion add-on like SweetFX running on top of Tridef.
  • Use a free program on the Steam Store like Big Screen Beta to display the content of your monitor (or Monitors if in Extended) in a virtual environment. Like Steam Theatre mode this won’t support all titles and may have some lag.

For Headtracking

I highly recommend FreePIE for your head tracking needs, it is an open source fork of GlovePIE and allows your computer to take one form of input and translate it into another. The most common use of this software is to translate the head tracking movement from the OSVR headset and map it to the mouse for use in games like Fallout 4, Skyrim and other first person titles.

Below is the headtracking script that I personally use for non VR titles – more scripts, including one that uses a Wiimote for headtracking, check out this forum thread:

global yawModifier
global pitchModifier
##global rollModifierdef update():
global yaw
yaw = yawModifier*filters.deadband(filters.delta(math.degrees(filters.continuousRotation(OSVR.yaw))),deadband)* YSpeed
global pitch
pitch = pitchModifier*filters.deadband(filters.delta(math.degrees(filters.continuousRotation(OSVR.pitch))),deadband)* XSpeed
##global roll
##roll = rollModifier*filters.continuousRotation(OSVR.roll)if starting:
system.setThreadTiming(TimingTypes.HighresSystemTimer)
system.threadExecutionInterval = 0.00
enabled = True
off = 0
multiply = 15
deadband = 0.01
YSpeed = 1
XSpeed = 1
yawModifier = -1.0
pitchModifier = -1.0
##rollModifier = 1.0
yaw = 0
pitch = 0
roll = 0update()if (enabled and off == 0):
mouse.deltaY = pitch*multiply
mouse.deltaX = yaw*multiply
elif (off == 1):
mouse.deltaX = 0
mouse.deltaY = 0
else :
mouse.deltaX = yaw*multiply
mouse.deltaY = 0diagnostics.watch(yaw)
diagnostics.watch(pitch)
diagnostics.watch(mouse.deltaX)
diagnostics.watch(mouse.deltaY)
diagnostics.watch(OSVR.yaw)
diagnostics.watch(OSVR.pitch)
##diagnostics.watch(OSVR.roll)

## change z or x to any key board key you want.
toggle = keyboard.getPressed(Key.Z)
toggleoff = keyboard.getPressed(Key.X)
## you can bind this key to a mouse button by changing this to
## toggle = mouse.middleButton
## or you can just bind z to a mouse key useing your mouse key software
## please change this script to how ever you like.
if toggle:
enabled = not enabled
off = 0

if toggleoff:
off = not off

HTC Vive

The Future For VR Hardware?

To say that Virtual Reality is in its infancy would be an understatement – none of the headsets listed in this article, even the OSVR have been on the market for six months. VR is an evolving experience that manufacturers and developers are still exploring – some headsets offer resolutions beyond Full HD, while others limited room sensing which enables players to walk around a physical environment. A VR experience in 2016 may feel nothing like the VR experiences of 2018 or even sooner, before making the leap into VR potential owners should be well aware that regardless of your choice in hardware there is a chance within the next 24 months that new expensive headset could be outclassed by the competition or even replaced with a newer model. Oculus has gone on record stating that it could be a while before we see the second generation headsets from them however.

Razer has already announced the OSVR HDK 2 – a fully upgraded headset that features a higher resolution screen among other enhancements. The display resolution of OSVR2 is exactly the same as the Oculus Rift & HTC Vive – 2160 x 1200 – providing an impressive 441 PPI and optimized for 90hz. The HDK2’s impressive display does come at a financial cost – it is priced at $399 USD – $100 more than the 1.4 and as of the writing of this article is currently on back-order.

Useful Community Resources

The OSVR community is alive and well and if you’re new to the community you might wonder where you can get some help with your headset or just catch up on the latest developments within the Open Source Virtual Reality movement. Below are a few of the key sites that I feel every OSVR HDK owner should check out, regardless if they are a developer or not. Thanks for reading my guide to the OSVR Headset, please look forward to more videos and instructional guides surrounding VR in the coming weeks.

Leave a comment

About Rae Michelle Richards

As a founding member of Broken Joysticks and Editor In Chief her duties include planning editorial content, writing news posts and managing the team of misfits known as BroJo. Outside of Broken Joysticks she is a transgender rights advocate and university student studying psychology. She can be contacted at RaeLangdon[At]Brokenjoysticks.net, or followed on twitter @Kitsune86

Follow Us On Social Media

Archives