How to Get Started with VR: Intro to Your First Virtual Reality Project
“Mrs. G was super-religious and spent most of her time in the OASIS, sitting in the congregation of one of those big online mega-churches, singing hymns, listening to sermons, and taking virtual tours of the Holy Land.”
Ready Player One by Ernest Cline
This sentence, describing the seemingly absurd possibilities of owning a set of virtual reality goggles in 2045 is already outdated. Meditative readings of the Bible are available on Samsung Gear VR today. For free. Sit back and enjoy.
It may seem like anything can be transferred into a virtual realm. Just scroll through one of VR experience stores. There’s some swimming among the dolphins, some pirate role playing, a few immersive programs teaching kids about the night sky, and a ton of games. Racing, shooters, arcades, exploration, and… oh, is this The Economist VR app? There’s also seems to be a Jaguar racing simulator, a virtual tour of GE’s smart windfarms in China, and an overview of the Western Sydney University campus.
Not many of those hundreds branded experiences available on VR platforms are as interactive and realistic as you may expect. But they’re out there, open to the public, collecting users, reviews and serving for the benefit of their developers. If you want to know how to build a VR application for your customers, employees, or simply for the good of the humankind, keep reading. Let’s start with the most reasonable examples of VR implementation.
Solid VR use cases
We can endlessly talk about the possibilities VR is going to bring in our world. Still, not many of those impressive product demos you see on Twitter or Facebook reach the implementation phase. Some, however, do. And they also bring noticeable results. These are a few solid use cases for your VR initiative that can fulfill your expectations.
Gaming. Most people’s introduction to virtual reality has happened through video games. Despite the wince-inducing price tag (the cheapest high-end system PlayStation VR retails for $350), VR gaming stays the most accessible for consumers form to experience the technology. The demand is high and the proposition doesn’t lag behind. Steam, the largest PC gaming marketplace reports 160 percent year-over-year VR user increase. According to its monthly report, 0.3 percent of Steam’s active users own a VR headset which makes up more than 4 million of all users of the service.
Steam VR store
Spending hundreds of dollars on VR products and supported hardware is not the only option for people who want to try immersive gaming. VR amusement park chains such as The Void or Oriental Science Fiction Valley are opening up across the world to combine standard virtual reality software with real-life sets – all for a fraction of a price spent on the hardware.
Marketing. Customer experience simulations, product demos, fun experiments with a vague relation to the company are the most common examples of using VR in advertising. These are mostly one-time campaigns aimed to create the buzz around the brand, get customers excited and let them try a product in a somewhat gamified way. Vincent Van Gogh Museum in Amsterdam, for instance, employed a VR development company to create a virtual tour for the painter’s five classic paintings. The experience was viewed 7 million times and made a lot of headlines as the first time all five of Van Gogh’s sunflower paintings could be seen in one place. Creating such content is easy and profitable especially if all it takes is a 360 degree tour around your facility or a newly opened location.
This Interstellar Oculus Rift experience encouraged movie goers to float inside a spacecraft
An example of a different approach was offered by an online travel agency Expedia. The company published two interactive virtual experiences – a tour through Mexican cenotes and a walk in Seattle’s Space Needle. Here, the company didn’t simply provide a guided tour – it’s an actual short game that can be played using HTC Vive or Oculus Rift hardware. This approach entails that the audience already owns a headset and will be interested to try the experience at home.
Screenshot from Expedia Cenote VR
The third approach can be seen in Lowe’s example. Here, the home renovation brand offered users to try their Holoroom innovation directly in store. This realistic experiences allows customers to play around with tiles, wall colors, furniture positioning and so on to create their dream environment.
Retail. For years automotive industry has been implementing virtual test drives. Audi, BMW, Porsche, KIA, Cadillac, and more automotive brands are opening up virtual experiences in physical dealerships and rolling out mobile apps. And this makes sense. Purchasing a car is a serious decision so allowing clients to select among all models, not just a few ones displayed in one particular dealership, is beneficial to both buyers and businesses.
VR technology in Audi dealerships
Many brands also equip VR for planning their store spaces. L’Orealemploys virtual reality visuals and 3D rendering to make better decisions on merchandize positioning. The process of prototyping, designing, and creating physical demos usually takes several months while virtual stores give the same feedback much faster.
Training and education. NASA started using VR simulators for astronaut training in 1990s and haven’t stopped since. Today the agency uses four types of virtual training including space walks, rescue situations, repair and robotic operations, and of course zero g-mass adaptation.
Space walking in NASA’s Virtual Reality Lab
Many dangerous and simply high-risk operations on Earth also employ virtual reality as part of their practice. Military, firefighter, railway maintenance, and many more simulators are used to prepare trainees to make quick decisions in stressful situations, and all without harming or endangering people as it used to be with traditional training. Flaim Systems is one of providers of such technology that uses real-life equipment, jackets with built-in heating elements to simulate fire, and a hose that gives realistic feedback. This is both far and very close to gaming sims people can enjoy on their PCs.
Regular school education benefits from VR as well. In 2015, Google announcedits new service Expeditionsand offered free headsets along with teacher-assisting software to all schools that decide to implement the technology. Using virtual field trips, teachers can take students to travel around the world, explore underwater flora and fauna, and enrich lecture with immersive and engaging experiences. Another provider ClassVRoffers both headsets and VR content organized in a curriculum for learning various subjects on different education levels.
ClassVR platforms allows teachers to plan and deliver lessons, along with creating their own content
Healthcare. Interestingly, there are not many ways VR is currently used in healthcare. Use cases mostly cover medical training and mental health treatment. The examples of these applications, however, are broad. Phobia, anxiety, and PTSD treatment, autism therapy – cognitive behavioral therapy in combination with VR helps improve neurological conditions by exposing patients to triggering situations in a virtual world. Studies also show that experiencing certain simulations can help people reduce physical pain or get rid of phantom limb pain.
A study conducted by the University of Washington documented an effectiveness of using VR for pain distraction
Source: Human Photonics Laboratory at the University of Washington
Tourism. Travel is one of the most intriguing and alluring virtual reality use cases that people are eager to try. VR can spark an emotional connection that no pictures or videos can. There’s Google Earth VR that allows you to fly above the planet for free or Everest VR that simulates conquering world’s highest mountain from the comfort of your living room. But these experiences don’t have to be solely entertaining; they’re often used by travel and hospitality brands as an introduction to their services or casting a deeper impression on a client. Although the market is flooded with prototypes, such as Amadeus’ VR booking system, some applications are already available to the public.
Thus, Thomas Cook offered virtual excursions in some of their destinations that customers could try in their physical stores. Best Western hotel chain created a virtual map of their properties’ rooms, lobbies, and even gyms to not only keep the customers engaged, but to help in the decision-making process many travelers go through when choosing a hotel.
VR tour around Best Western Premier
Understanding VR development
VR application development is no longer an uncharted area. Today we have tools, approaches, and techniques that help us get started from a lower entrance point. Here we will describe main phases of creating a VR project along with the tools and skills you will require.
Design and prototype tools
Similar to most software engineering projects, VR development usually starts with design. We say usually because sometimes, for prototyping or educational purposes, this step is skipped and coders use assets from community-run libraries. You also can download ready-made objects, backgrounds or textures – they save a ton of time and can often improve your project without any additional effort. However, for custom experiences, 3D modeling is a must-have. So, what will you need?
Pen and paper. Although the 360 degree world has different from traditional rectangular screen dimensions, you still need to prototype and create 2D wireframes for the UI part of your project. Some experienced designers even created printable templates that can be converted into virtual sketches: check out this 360 panorama grid and a VR storyboard template.
Example of a sketch for virtual reality
Sketch. This classic tool for designing user flows and screens in mobile interfaces can also be successfully used in VR. Besides, there’s also a plug-in that transforms Sketch documents into 360 degree view as seen on the gif below.
VR interface created in Sketch
Blender. This free and beginner-friendly product will help you create great custom 3D models for your first VR project. Any visual designer from your team can get a hang of it with online tutorials and a bit of practice. Blender objects can be easily imported into any game engine.
3ds Max and Maya. These Autodesk products are standards in modeling, sculpting, animation, lighting, and visual effects. Many if not most game and movie elements are designed using one of them. Which is both a blessing and a curse since their robust nature makes it a challenging task to learn. They are not exactly budget and require a true master to take advantage of. Consider them when you have time and money to spare.
Cinema 4D. Another advanced tool, Cinema 4D is a less widespread tool with a ton of plug-ins and a milder learning curve when compared to Maya, for example. It’s popular among small teams and single artists, and unlike Autodesk products, available for Mac OS.
VR scene created using Cinema 4D
A-Frame. This open source Mozilla project allows you to create VR experiences using HTML. Finished experiences run on HTC Vive, Oculus Rift, Google Daydream, and Samsung Gear VR. This is a great starting point to let your in-house developers experiment with a new format.
Primrose. There are two use cases described on the tool’s official website: prototyping and collaboration. While the first is more or less the same as previously mentioned software, the collaborative function is unique. Basically, Primpose encourages users to voice-chat in their virtual meeting rooms as in common interaction spaces. Primrose apps can be viewed on desktop, mobile, and most major headsets.
To develop interactive virtual reality experiences you most and foremost need a game engine. Game and VR engines are programs specifically aimed at creating rich, immersive, and realistic worlds that require programming and graphic design skills. Most popular VR engines today are free (at least to a certain point), easily integrated with VR platform-specific SDKs (software development kits) and allow for heavy customization with APIs.
While mobile development suggests that you use different tech stack for every operating system (unless you’re using one of the cross-platform methods), most VR engines allow you to publish your app on all main platforms. While there are tons of engines on the market to explore, we’ll give you a quick overview of the main ones to give you a headstart.
Unity. Considered the de facto tool for beginning VR engineers, Unity supports all main VR devices and file formats used by different 3D building applications including Cinema4D, 3D Max, Maya, and more. It uses C# – object-oriented scripting language – to write commands for game objects and the overall logic of your virtual world. One of Unity’s biggest pros is the huge community-based asset store for free and paid 3D objects, textures, and audio files. The product is also free before you start earning more than $100k yearly from your app. Finally, the community is unmatched with 45 percentof game devs preferring Unity over any other engine.
Unreal Engine. Second in line after Unity with around 17 percent of the market is Unreal Engine. This tool uses C++ language which is considered more difficult than C# or Java and requires some C++ programming knowledge before getting started. There’s also an alternative scripting method called Blueprints Visual Scripting which allows designers and programmers to work in collaboration using the same range of tools.
Google Daydream development in Unreal Engine
Unreal uses a different pricing model – the engine is free to use until you earn $3k a quarter and then you have to pay 5 percent of the revenue from your app. It’s a more complex and sophisticated tool compared to Unity which is compromised by better performance and arguably the most realistic look among other engines. Just like Unity, it supports all main VR devices.
CryEngine. Another free tool for highly realistic-looking interfaces is CryEngine. It’s famous for its unique weather and water effects including volumetric fog, ocean physics, and full 3D cloud rendering making it a first-choice tool for nature-rich experiences (check out this gameplay of VR game Robinson: The Journey for a demonstration). CryEngine also works with C++ and unlike its competitors supports only three VR platforms: HTC Vive, Oculus Rift, and OSVR.
Platforms and SDKs
The second decision regarding VR development that you’ll need to make is the platform. Of course, with cross-platform engines such as Unity and Unreal, you can tap into any market, but any development requires you to pick the starter SDK to shape your experience around. SDK is a plug-in that you add to your chosen engine that includes engine- and platform-specific assets, content, and techniques that shape the overall native experience for each device. Among many community-provided APIs and tools, you probably should start with each brand’s official SDK.
VR devices on the market can be divided into two categories: high-end and mainstream.
High-end VR products use high-performance PC processors and consoles. These sophisticated products with specific hardware requirements include HTC Vive, Oculus Rift, and PlayStation VR.
Mainstream VR devices such as Samsung Gear VR, Oculus Go, or Google Daydream are comprised of VR glasses (also controllers, sometimes) and use mobile processors for computing power and as displays (except for Oculus Go that downloads VR content directly to the device).
How to choose a platform to develop your first VR experience on? Well, you may go the popularity route, but remember to consider other factors. For example, PlayStation has the largest market share for its headsets but only users owning the console at home can use them. How are you going to deliver your apps to the audience? Will it be a one-time marketing campaign experienced directly in store? Or a game that will be available to people at any times on Steam or mobile stores? Capabilities of different devices can also be different so let’s draw a quick comparison.
Sony PlayStation VR is the most popular vendor for headsets, followed by Oculus, HTC, and a small portion of other devices including Samsung and Google
Below we review six VR devices, common implementation examples, available SDKs and shipping platforms. You can skim over this table and read a detailed description after.
HTC Vive (Viveport SDK). Devices from the HTC Vive line appeared from the collaboration of a hardware company HTC and Valve, creator of the largest software distribution platform Steam. This headset allows users to experience the virtual world while sitting, standing, or even in movement – it maps out the room around the wearer using a camera and provides a more immersive and less nauseating experience. The only limitations for moving are created by each separate game and are being displayed as faint blue lines on the screen during the VR experience. The apps are distributed via – you guessed it – Steam VR platform and available on PC.
Oculus Rift and Oculus Go (Oculus SDK). Being Vive’s biggest competitor in VR experiences for PC, Oculus started the global VR adoption with its Kickstarter campaign in 2014. Apart from Steam platform, you can also distribute applications in the Oculus store. Recently the company rolled out a lighter and cheaper headset Oculus Go for users who don’t have robust and performance-demanding computers. Games and apps for Go can also be distributed via a dedicated mobile app that downloads them directly on a headset. Oculus, along with HTC Vive, are the only VR devices allowing for room scale experience that we described earlier; so if you want your users to freely roam around the room, these are your only options.
Samsung Gear VR (Oculus Mobile SDK). Since Oculus took part in creating Gear VR hardware, it’s only logical that you can use their dev kit for software as well. Both brands share the same app store and the overall experience is very similar. The main difference is that the Samsung device is powered entirely by a smartphone – and Samsung smartphone nonetheless. The one noticeable advantage Gear VR has over Oculus Go is the price and the fact that many Samsung users likely got their device for free or with a discount which means that even individuals not particularly interested in VR can have a device laying around in their homes.
Google Cardboard (Google VR SDK). When Google released its foldable VR device made out of plastic lenses, magnets, and well, cardboard, for just $15, virtual reality has become accessible to everyone with a smartphone (given you’re located in one of the countries Google ships to). Content for Google Cardboard can both be found on the official app and directly via YouTube – if you’re developing simple interaction-free 360 degree experiences, Cardboard can deliver it. Along with the device launch, Google introduced SDKs, APIs, and tons of resources for a quick start into VR development.
Google Daydream (Google VR SDK). This 2016 device became the headset Google lovers deserved – an elevated interactive VR experience when compared to the simplistic Cardboard. Unlike Samsung Gear VR, Daydream works with several phone brands, however, only the ones containing specific components. Among them are the Pixel phones, the latest Samsung, HTC, LG, Xiaomi, Huawei, ZTE, Asus and Alcatel models. No iPhones, unfortunately. Games and experiences can be downloaded using a Daydream app.
Google also recently collaborated with Lenovo on its Mirage Solo device – the standalone VR set similar to Oculus Go that runs Daydream software. This opens up more possibilities to the Google experience such as using WorldSense technology that tracks user’s head position for more natural movement in VR. Apps using these method can be written using the same development tools Google provides.
What about PlayStation VR experiences? You have to contact Sony directly from its PlayStation Partnerspage for information about any PS development. Considering much more developer- and customer- friendly solutions on the market, we recommend resorting to this method later in your VR journey.
While with traditional apps we need to check how well the program performs, the virtual world requires testing for how well the experience feels. Which is exactly where subjective factors can play a very important role. One tester or even a group of testers can’t assess how soon users will start feeling nausea, eye strain, or get a headache. And what does the testing entail exactly? This is something VR dev teams have yet to explore. Among the popular usability testing approaches are peer testing (with a spotter and a recorder), and simple session recording.
Just like with regular PC games, hardware manufacturers publish technical benchmarks that will allow experiences run smoothly on their machines. One of them is GPU performance which is 90 frames per second (FPS) in Oculus and HTC. To make sure their applications won’t face common problems such as dropped frames and screen stutter, developers use FPS counters. One of them is Nvidia’s new VR-targeted benchmarking tool called FCAT. It runs in the background as you test games, captures data, and then saves it in a readable format and as handy graphs. Unreal Engine and Unity have similar built-in functions.
Frame timing data shown in Unreal Engine
Get prepared: What slows VR adoption
Virtual reality examples are impressive but scarce. Why so? We have a few reasons for you.
- Financial restrictions. Headset sales are noticeably sinking and that’s mostly due to the price and the lack of technology updates. Today, VR users who are either tech enthusiasts or active gamers are still considered early adopters. And they also don’t rush to buy new headsets while the technology isn’t moving much forward. The lack of implementation also leads to the public viewing VR more like a toy than a practical investment.
- Hardware demand. VR headsets of today are not only financially restrictive but also technically demanding. If a user decides to build a computer considering Oculus or HTC minimum requirements, this will likely cost them around $1000. And that’s only the consumer side. Developers also need to have highly powerful hardware to manage 3D modeling and VR engineering tasks.
- Physical discomfort. By its nature, most VR sets are heavy, restricting, and still don’t meet our expectations of highly immersive and convenient goggles. For the best VR experiences, users often dedicate separate rooms or spaces where these limitations are less visible. Before VR devices become mobile and compact and can be easily accessed anywhere, the adoption will keep staggering.
- Health issues. PlayStation and Oculus don’t recommend using headsets for children under age 13. Pregnant and elderly people, those suffering from heart or psychiatric conditions should consult a doctor before trying VR experience. People are also under risk of having seizures, dizziness, headaches, eye strain, or even blackouts during virtual reality gaming. It’s important to point out that most of these issues are also applicable to regular gaming and even watching TV, however the cases of severe problems are rare and preventable. The biggest problem with engaging people in VR experiences is taking this responsibility and preparing for possible dangers.
Is it worth it? Main takeaway
Have you noticed that we skipped the ideation phase of your future VR journey? That’s not to say that coming up with a viable use case is not important. One the contrary, if you have the right solution that can bring significant benefits both to you and your customers only with the help of VR, it’s worth the try. The hardest part is understanding how much effort providing this solution requires.
VR development is not an easy endeavour. However, there are ways to make it less of a decade-long project with huge design and engineering teams and more of an experiment, the waters to tip your toe in. We’ve talked a bit about WebVR, possibilities and examples of its implementation using simple and accessible web tools. We’ve reviewed mainstream headsets, specifically mobile ones like Oculus Go and Mirage Solo. Google Cardboard apps and games are also the easiest and most approachable way to get started with VR and engage your audience. So if you’re interested in testing unexplored territories, there are ways to do it – you just have to pick one of many approaches.