Woman using virtual reality glasses to explore

What to Know Before Creating Your First VR App

7 Feb 2017 by Matt Fedorovich

With the Virtual Reality (VR) industry projecting more than $100 billion in valuation by 2021, it's becoming clear that innovative companies need to start developing for VR. Here at Insight, we already have one VR application in the iTunes Store and plenty more in development. Since there's a lot of information to digest, this will be the beginning of many posts about the VR space. Here are a few “need to knows" for now, and then we'll dive into each section separately.

Know the difference between VR, AR and MR/HR.

Currently in the VR world, there are three types of realities you need to know. Here are the basic definitions and an example of each: 

  1. Virtual Reality (VR) — using software and interactive hardware to generate realistic or non-realistic images, sound and other sensations to simulate a user’s presence in the virtual environment 
  2. Augmented Reality (AR) — a live direct or indirect view of one’s world whose elements are augmented with computer-generated input. AR takes the current view of your world and adds digital information to it. 
  3. Mixed Reality/Hybrid Reality (MR/HR) — a mix of both VR and AR as it merges your current physical world with the digital or virtual one.
Drawing of someone driving

Define your market.

It seems simple, but the answer, “I want to reach everyone,” won’t really apply here. There are certain deployment methods for what type of VR/AR/MR application you want to create, and there are certain products you may need. You have to consider what platform you're going to deploy on: mobile, gaming console, Mac/PC, web or headset-specific. Each option will have its own advantages and disadvantages.

Drawing of a tablet display and a desktop display weighted evenly on a scale

Do research.

A Head-Mounted Display (HMD) is what brings a user into your VR world. There are different variations of HMDs and various price points. Some use external hardware such as a smartphone or a computer while others are fully integrated and have no cords or external processing.

Various HMD Virtual Reality glasses

HMD accessories

Generally, HMDs only provide a small amount of variation in input the user can provide. The main two are gazing and a single “touch.” Although this is good for some applications, you'll generally be inclined to say, “I wish I could use my hands.” That's where some of these secondary input accessories come in. Single/dual controllers, external sensor tracking and full-body controllers are a few examples. Some are HMD-specific while others are cross-compatible. When you find an HMD you want to use, find out what controllers it supports.

Various types of HMD accessories

Know what digital assets you'll need.

I wanted to break digital assets out on its own because they're something you need to think about as a separate piece to your application. Digital assets are referred to as the models, objects, photos, textures and other items being used by the 3D engine to render your world or app. Because we're more than likely designing the application in a 3D space, you'll need 3D objects that the 3D engines can read and manipulate. At some point, you'll need things like a 360-degree camera, a 3D artistor an asset collection online.

Various digital models, photos and objects rendered through a 3D engine

Know the development tools you'll need.

Now that you have an idea of what VR/AR/MR is and what hardware you may need, it's time to talk about the software and how you'll develop your application. There are many tools out there, so you'll need to find out which tool(s) will be best for you. The tools are generally defined by what you want to accomplish and which space you want to develop for, be it AR, VR or the MR/HR space. As an example, here's what we chose in developing a VR application that had equi-rectangular photos:

UI of VR display

Know the issues with VR/AR/MR.

There are a few things you need to consider before you get all ramped up developing your application. When sending users to a different world and messing with people’s senses, people actually experience motion sickness, hand-eye coordination loss, eye strain, nausea and other symptoms. But it's not all doom and gloom. We can fix or adjust a few things here or there to make the experience more pleasurable. Things such as anti-aliasing, avoiding lag, avoiding awkward head positions and using a frame of reference will help users avoid issues.

Man wearing VR glasses

Check existing examples.

Finally, check everything that's out there in the world right now. Many “showcase” applications show great uses of VR/AR/MR and, since the space has no best practices yet, the world is completely open to creativity. There are a million use cases for VR, from hospital settings to promote meditation and relaxation, to creating a new type of social network. The sky really is the limit for the space and now is the time to jump in.

User playing in virtual reality world setting
Headshot of Matt Fedorovich

About Matt Fedorovich
App Dev Consultant

Matt is a mobile developer with experience in iOS and Android native development. He also has extensive experience in game development with Unity3D and is integral in Insight's VR/AR application development. 

Read more posts by Matt
Connect with Matt on LinkedIn