Saturday, February 28, 2015

GDC, OSVR and the Power of the Network

I'll be at the Game Developers Conference next week to talk OSVR with anyone interested in the open-source virtual reality movement. You are likely to find me at the Razer OSVR exhibit (booth 602, South Hall) but you can also contact me to set up a meeting.

Towards the end of the week we will open up the OSVR software source code to everyone on Github on the /osvr organization. We can't wait to help the VR community - a community of innovators, of dreamers, of artists and artisans - dive into OSVR and, together, make it even better.

The power of OSVR is the power of the network. If only two people in the world had an email address, email would be pretty useless. Now that "everyone" has an email address, it is invaluable. The more companies that connect their hardware into the OSVR software framework, the more compelling it will be for game developers to create games on top of OSVR. The more games are created, the more valuable it is to add hardware to it. The value of the framework grows exponentially with the number of products that connect to it.

That's why we are working to make plugging into OSVR software framework as easy as possible. We do this through example programs, through developer assistance, through white papers that show how to convert a VR Unity into Unity over OSVR.

We announced OSVR in January. As I write this, there are about a dozen companies making HMDs that are supporting OSVR. In our experience, it takes between a few hours to a few days to fully integrate an HMD into OSVR. Once integrated, all software that is correctly written with the OSVR framework works on such HMD. If it's that easy, why wait?

BTW, it seems that there will be new HMDs announced at GDC, and we look forward to supporting them as well. Our goal is that OSVR application developers can truly use their code with pretty much any hardware on the market.

We see multiple eye tracking vendors, multiple 3D audio vendors, multiple hand and finger tracking solutions, all coming into the OSVR network. We've added about 50 partners this year. The more, the merrier, because we want to give consumers the choice of selecting the best hardware and software combination for their experience. There are numerous Android devices out there - different screen sizes, wide range of cameras, wide range of CPUs, an endless selection of unique features. Why should VR be different? Why would you want a 'one size fits all' solution?

Of course if your type of device has not been integrated into OSVR yet, it's going to be a bit more work as we would need to work together to define the interface and define it in such a way that it is not unique to your device but rather covers a wide range of similar devices. If you made the first printer that integrated into Windows, you had to work a little harder, but once a print layer services was defined for Windows, it was easy to connect other printers. The OSVR team wants to help in defining the interface and doing everything we can from the OSVR side to make such integration straightforward.

Have a new device or software package that you want to integrate into OSVR? Come talk to us.

The power of OSVR is the power of the community. How many people would we need to hire if we wanted to do OSVR completely in-house and get all the features that are truly desired by the community? 10 people? 100 people? 1000 people? Even if we had 1000 employees working on this, would we have features out quickly enough to satisfy everyone's different set of priorities? Probably not.

That's why OSVR is open. Want to connect to a custom sensor development board that OSVR does not support at the moment? Download the example on how to write a tracker plug-in and do it yourself. Want to support a game engine that is not currently supported? Follow the example of a community member that connected OSVR to a new game engine. Think you have a good 'time warp' rendering algorithm or a new SLAM algorithm or can improve system performance? Show us (and the world) how good you are!

We'll be putting up a Wiki page with some suggestions for new features and improvements, but let's drive the platform forward together.

There is power in being open. Aside from open-sourcing the OSVR hardware and software, we are building upon other open-source projects so that OSVR advances as they advance:

  • OSVR builds upon some aspects of VRPN (see the list of supported devices on the main VRPN page), so that we can leverage many of the existing device drivers. As an aside, OSVR adds a descriptor file to each device so that the capabilities of the device are well-understood by the OSVR application, something that was missing from the original VRPN implementation.
  • The OSVR imager class builds upon OpenCV which provides an incredible amount of computer vision and image processing algorithms, some highly optimized for particular GPUs.
  • Other libraries such as Eigen and Boost, so that we don't have to reinvent the wheel

See you at GDC. Come see our demos, but more importantly, come talk to us about how we can work together. See you in San Francisco!

The post "GDC, OSVR and the Power of the Network" first appeared on the VRguy's blog at 

No comments: