Wednesday, March 26, 2014

Project Virtua - Create the Future

With the very recent announcement that Facebook has bought Oculus VR, I've already seen quite a few people who are absolutely horrified at this.  Minecraft with official Oculus Rift support has been canceled, I received a few messages of people who were worried, and I myself was very concerned after hearing this news.

But then, I thought about what I had read.

Facebook, a company whose CEO talks all the time about a connected world, a company who Microsoft has a large stake in, a company with easily over one billion users, has acquired Oculus VR, a company that wants to bring virtual reality to the masses, a company that has re-ignited the virtual reality future of the 90's, a company that has incredible visions of the future.

Think about what a company like Facebook could do for the Oculus Rift.  They have the money to let them further develop their technology.  They have the users to bring even more awareness to the Oculus Rift (something that my parents had not heard of until this past January).   But there is one key thing that Facebook could potentially bring to the table: Microsoft.  Why does Microsoft matter?  Because they have the Kinect.  The Microsoft Kinect is the last missing piece to the puzzle of virtual reality.  It is the key item to solving a large portion of the needs for Oculus VR, such as the issue of body-tracking, or the getting rid of a controller since you can't see it anyways.  It is an incredibly important part of making sure that virtual reality does not become another gimmicky controller.

There's also another side: Mark Zuckerberg's desire to connect the world.  This is a huge deal, and even those who just want the Oculus Rift for gaming should care.  The Oculus Rift cannot succeed on gaming alone, and yet that's all that people seem to think of with it.  Even I do, and it's a problem, because there are not enough gamers in the world to buy a $300 product and allow a company to make a decent profit.  The Oculus Rift needs everyone, not just gamers, and if Facebook is able to get it to other markets, that's yet another good thing.

That being said, I too am still skeptical.  Facebook does not have a solid track record with doing what is best for a product in my opinion, and I worry about whether they will completely mess this up.  If they don't go to Microsoft for help, and don't properly utilize the potential, the Oculus Rift will end up as a terrible gimmick that's nothing more than a novelty.

Still, I want to try and help make sure that the Oculus Rift stays on track.  What I think would help with this is to start looking towards full virtual reality games and applications, rather than just things that use the Oculus Rift.  By doing this, I believe we can help the Oculus Rift stay on track for what it needs to do, rather than what Facebook may do.  That's why, I am doing a very early release of my recent project: Project Virtua.
Let's create the future
Project Virtua is an open-sourced set of tools for creating virtual reality applications, using a combination of the Oculus Rift and Microsoft Kinect, as well as future releases of newer versions of these devices, and other companies versions too.  Using it, you can create entirely new worlds that users can be physically put into.  Need to swing a sword at a bad guy?  Just swing it then.  Want a better seat to view a sports game from?  Then just scoot a few seats over.  Want to sit at the front of a class?  Just stand up and walk to it.  The possibilities are endless, and now, with Facebook's acquisition of Oculus VR, I have no doubts that Mark Zuckerberg sees similar potential in it.  So where does Project Virtua play in then?  It aims to make developing virtual reality applications simple.  Need to get a user's head rotation?  Just call GetRotation.  Need to warp the display for the lenses?  Just call ComposeFinalImage.  Want to get the position of a person?  Just call GetPosition.  The idea with this is an incredibly simple library for developing anything from games to apps.

I want to stress that this is still a very early release.  There is still a lot of work that needs to be done, especially when it comes to creating a nice system for rendering to the screen.  We are still considering DirectX support, as right now we only support OpenGL.  The plus side to this is that it is partially cross-platform already, so Mac and Linux users can take a look into this as well for certain parts.  This is something I am using as a school project too however, and as a result it will definitely continue to be worked on for the next few months at the least, but again, this is very early on.  Everything from the Kinect support to the website itself is still under heavy construction, so please bear with us while we work on it.

I too want to see virtual reality succeed.  I was born in the early 90's, and grew up with the it right within reach.  I hope this time around we can see it succeed, but this deal that Oculus VR has made with Facebook is very risky.  It can either end as a complete success, or end up becoming a complete failure.  Only time will tell unfortunately.