FUN WITH THE OCULUS RIFT: AUGUMENTED REALITY, UNITY3D AND 4 DIMENSIONAL VECTORS, OH MY!

Pictures:

Armount

^ Augmented Reality watch testing on Unity3D.

 

 

AR3

^ Playing Halo: CE on Oculus Rift using my gyroscopic game controller.

 

Skills used:

Spatial reasoning, Mechanical Engineering, Electrical Engineering, Unity3D, C#, a little JavaScript

 

Description:

 

Recently my friends have been bugging me to get an Oculus Rift, mainly to see what I would do with it. Well I finally broke down and bought one. So, here is what I did with it.

To start, I attempted to play Halo: CE on it with my Gyroscopic Game Controller. I have a computer with a decent enough processor to can play halo effectively, and I tried hooking my game controller up to it and playing Halo by aiming. Aside from having issues with Vireio, I ran into the issue that my game controller has no buttons to move, only an accelerometer (at some point I need to use quaternions to make that work, but four-dimensional coordinate systems are scary). Once I had everything hooked up right, the lag was just bad enough to make playing difficult. Oh well. Maybe later.

Also, there are a number of interesting games and tools that can be used with the rift, like VRclay (for those of us that use 3D printers) or any of the games on Oculus Share, and Virtual Desktop has been fun to watch movies, do work, or (my personal favorite), turn on the iTunes visualizer, wrap that 360 degrees around, and be “immersed in the wubs,” as it were.

However, I am more creative than just playing with it the way it was supposed to be used. What if this could be used as a tool?

Following in the footsteps of our lord and savior William Steptoe (hallowed be his name), I hooked up two webcams to the front of the rift, along with a 180 degree fish-eye lens and used Unity3D to create a link to the rift through them. After learning the basics of C# and JavaScript, I started coding up a H.U.D. that displays system time. Not long after I started playing with Unidunio (which allows unity to interact with an Arduino),NyARtoolkit (an augumented reality software), and coding up what could, potentially, be an infinitely expandable build platform. Think about it, you can look at a glyph on your wrist and it blows up into the greatest smartwatch to not actually exist! Need to remember where you put your car in the parking lot? Set a waypoint and follow it back with GPS through Arduino. Don’t know your heartrate? Run a heart rate sensor through Arduino, throw it on the HUD and have it automatically call 911 when your heart rate drops too low, goes too high, or changes at too great a rate. Want to fly? Hook two cameras up to a quadcopter and fly around, displaying the view from the quadcopter to the Rift. The possibilities are endless!

 

Conclusion:

For those of you who are interested in buying a Rift but are not sure, I must say that, if you are looking to play games on it, wait for the consumer version. However, if you are looking for an immersive space to use as a maker’s build platform, the devkits are extremely useful and fun to play with in that regard.