The Dev Team On: HTC Vive & Unity
This installment of The Dev Team at PIXO features commentary from Tech Director Vinh and Engineer Hasnaa.
The HTC Vive is the newest, and arguably greatest piece of virtual reality hardware on the market right now. While it has yet to penetrate the mainstream marketplace, those lucky enough to use one agree it offers immersion unlike anything else – some of the PIXO Group staff even call it a “religious experience.”
Most likely, if you’ve already tried the Vive, you either: work for a tech company that develops for it (raises hand); work for a company that’s utilized it in sales & marketing efforts; or you attended an event where you were able to experience the Vive. Consumer adoption has yet to be widespread, but the exceptional experiences should propel it towards becoming commonplace.
So what does it take to build experiences for this game changer? First, an awesome team. Here at PIXO Group we’re lucky to have awesome modelers, character artists, animators, sound designers, UI/UX experts and engineers. But if you want to start exploring on your own, the Vive’s plugins make development relatively simple for those ready to dive in.
There are two main 3D game engines for the HTC Vive: Unity or Unreal. At PIXO Group, our history in Unity goes back to our mobile app games, so it’s the plugin of choice for our development team.
Once you have Unity and the corresponding Steam VR plugin, the setup is straightforward and it contains example scenes. “To get started, you can drag prefabs that come with the plugin,” explains Hasnaa. Some simple first experiences can be things like hitting a ball with a bat. Once the physics of that are set, add in art to the scene to create an entire baseball game. If you’re already familiar with Unity, you’re basically ready to go.
“If you’re a Unity developer and want to make virtual reality experiences, Unity is so well supported by the VIVE, developing VR is more simple than making an omelette,” said Vinh. (Editor’s Note: That depends a lot on who’s making the omelette. I am much better at omelettes.)
Vinh and Hasnaa enjoy building worlds in the Vive because of the sense of immersion. Thanks to the high frame rate, there’s less dizziness, which is important not only for the end user, but for the developers during tons of testing. The depth of field feels really natural, the visualization of the controllers is excellent, and the sense of the room scale adds to the experience. Additionally, our team loves the opportunities the Vive afford them to play with physics.
“When you place something down it feels like it, thanks to the haptic feedback on the controllers,” said Hasnaa. “It’s all very real, physics-based interactions.”
So, for example, the controller can be replaced by a virtual bat with a collider on it, to hit balls or other projectile objects. The feedback extends beyond just the controllers, though. The Dev Team also wrote code that projects a collider from the headset to the ground. This simulates objects colliding with the players themselves. The Dev Team wrote code that maps a point in space on the Vive headset and connects it to a point on the ground, so you’re experiencing a projection of yourself standing vertically. So when a ball comes at you and you swing at it with the controller, the accuracy of the experience creates that total immersion that is unlike anything else on the market right now.
Beyond simple ball and bat projects, what can developers build in the Vive? Vinh encourages the exploration of fantasy realms: “If you ever wanted to be a space ranger fighting aliens, you can do that in the Vive.”
Experiences don’t always have to be as grandiose as those, though. Vinh explains that you can put a real movie on a texture of an object in the world, so you’re watching a film in virtual space. While this has great implications for experiential marketing – like running promotional videos for a product within an experience – Vinh has a simpler explanation.
“In virtual space, you can make the television as big as you want. Big screen TVs are expensive – just build one in VR!”