My new life with Virtual Reality

Jonathan and I were eating at the Indian place that we like near our work when I got a call from my landlord.

A large package was sitting in front of my door. “A Large package?” I pondered, wondering what exactly it was that I bought that could’ve been described as large.

Surely it wasn’t the HTC Vive that I bought? It would’ve been a few days earlier than expected. Nonetheless, Jonathan and I quickly finished our meal and headed  back to the apartment.

Much to our surprise, it was indeed the Vive. Without exchanging a word, we both knew what we’d be doing for the rest of the day.

The box was some of the most beautiful packaging I’ve seen

The packaging of the Vive is quite well designed. The box exudes a sense of luxury, with ample packing foam. The box is actually much larger than needed, but it’s cool looking enough that I would consider putting the front up on a wall.

The unit itself is the centerpiece of the whole thing. It’s not an elegant design as compared to its competitor, Oculus Rift, but then again, it’s more about the functionality over the aesthetics when it comes to prototype/developer stuff, in my opinion.

Setting it up was not terrible, but it did take us about an hour. I had some tools available, so getting to work making a hole in the wall to screw the lighthouse sensors on wasn’t a huge issue. I would imagine that someone with no tools or not allowed to make holes in the wall would find this step more challenging. It was easy sailing for the rest of it; As the Vive Setup took us through all the steps of setting up the room, pairing with the sensors, and creating measurements. I had the games downloading while Jonathan and I finished the hardware setup so it would be ready as soon as we finish the calibration steps.

The workstation, converted into a VR system.

The first game we had to try was The Lab by Valve. Online posts tout this as the definitive “First” VR experience, and they were absolutely right. Stepping into the Lab, I was immediately enthralled by the lush landscapes of Vesper Peak, a mountain range near Valve’s headquarters. A portal-esque puppy approaches on the horizon, and I bend down to touch it. It reacts. The feedback was immediate and it all felt very natural. I’m not arbitrarily pushing a button to interact with the dog, I’m simply interacting with it.

Soon it was time to try something more active. I loaded up Longbow, another mini-game from The Lab that has you defending a castle from a Viking horde. The bow mechanic had the player nock the arrow into the bow using both hands, and move their arms to aim and shoot the bow. Having used a bow before, it felt immersive and intuitive.

Jonathan and I tried a few more experiences before the day was done, but I knew that this was the beginning of something special.

Cardboard VR Project – Squishy Toad

I’ve been progressing through my Unity VR tutorials and wanted to share a game that I’ve been working on:

SquishyToad
My First VR Game, Squishy Toad

Squishy Toad is an extension of the Unity VR tutorial I was doing, where the players play as a Frog/Toad and must cross infinite lanes of traffic while escaping from the unyielding advance of the fire behind them. The player keeps hopping forward, watching out for traffic, until the Toad is squished by a car or burned by the fire.

View while in game
View while in game

Integrating VR content is actually fairly straight forward. For this project, the target device is for mobile, so Google VR (previously known as Cardboard) was used. After downloading the Github GVR library and importing it into the Unity Project, I was able to utilize a Google VR “Prefab” (Which describes a set of GameObjects and their associated properties) to replace the traditional camera. After that, I was able to get the stereoscopic display seen above. The overall experience was quite smooth, allowing a designer to focus on creating gameplay as opposed to struggling with the ins-and-outs of getting VR working.

Besides learning about Google VR, this was also the first time I had the chance to learn about procedural generation. Although this was a one-dimensional algorithm, I did get some insight into how this can be extended into multiple dimensions. I also learned about some VR specific philosophies as it pertains to UI, as many of the traditional UI concepts do not carry over when the player has full control of camera movement at all times (One of the core tenets of VR). Therefore, most of the UI is in the World Space (Vs. overlaid on top of the screen), left for the player to discover.

I also learned about some VR specific philosophies as it pertains to UI, as many of the traditional UI concepts do not carry over when the player has full control of camera movement at all times (One of the core tenets of VR). Therefore, most of the UI is in the World Space (Vs. overlaid on top of the screen), left for the player to discover. I find it quite natural, as the concept requires some level of world building built in to accommodate the idea that words are not just floating in thin air.

I plan to continue developing for Squishy Toad until I’m happy with it, after which I’ll put it up on the App store. Stay tuned!