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 seems like anything can be transferred into a virtual realm. Just scroll through a VR experience store. You can swim with dolphins, act out your dreams of being a pirate, immerse yourself and your kids in an educational VR about the night sky. And then there are a ton of games: racing, shooting, 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 of 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 and reviews, while benefiting 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 go on endlessly 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 satisfy your expectations.
Most people’s introduction to virtual reality has been via video games. Despite the wince-inducing price tag (the cheapest high-end system PlayStation VR retails for $350), VR gaming remains the most accessible way 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 a 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.
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 around the globe to combine standard virtual reality software with real-life sets — all for a fraction of the price spent on the hardware.
Customer experience simulations, product demos, fun experiments with a nebulous relation to the company are the most common examples of using VR in advertising. These are mostly one-time campaigns aimed at creating a buzz around the brand, getting customers excited, and letting them try a product in a somewhat gamified way. The 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.
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 requires that the audience already owns a headset and is interested in trying the experience at home.
The third approach can be seen in Lowe’s example. Here, the home improvement brand offered users the opportunity to try their Holoroom innovation directly in store. This realistic experience allows customers to play around with tiles, wall colors, furniture positioning and so on to create their dream environment.
For years the automotive industry has been implementing virtual test drives. Audi, BMW, Porsche, KIA, Cadillac, and other automotive brands are opening up virtual experiences in dealerships and rolling out mobile apps. And this makes sense. Since purchasing a car is a serious decision, allowing clients to select among all models, not just those displayed in one dealership, is beneficial to both buyers and businesses.
Many brands also use VR for planning their store spaces. L’Oréal employs virtual reality visuals and 3D rendering to make better decisions on merchandise positioning. The process of prototyping, designing, and creating physical demos usually takes several months while virtual stores provide the same feedback much faster.
Training and education
NASA started using VR simulators for astronaut training in the 1990s and haven’t stopped since. Today the agency uses four types of virtual training including spacewalks, rescue situations, repair and robotic operations, and of course zero-g-mass adaptation.
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 announced its new service Expeditions and 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 ClassVR offers both headsets and VR content organized in a curriculum for learning various subjects on different education levels.
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.
Travel is one of the most intriguing and alluring virtual reality use cases. And, people are eager to try it. 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 the world’s highest mountain from the comfort of your living room. But these experiences don’t have to entertain only. Often used by travel and hospitality brands as an introduction to their services, they can also cast 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.
As an example, Thomas Cook offered virtual excursions to some of their destinations that customers could try in their physical stores. The Best Western hotel chain created a virtual map of their properties’ rooms, lobbies, and even gyms to not only keep the customers engaed, but to help in the decision-making process many travelers go through when choosing a hotel.
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 the 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 is 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.
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 a 360-degree view as seen on the gif below.
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 the 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 them challenging to learn. They are not exactly cheap and require a true master to put them to work effectively. Consider them when you have time and money to spare.
Cinema 4D. Another advanced tool, Cinema 4D, while not as widely used, has 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 is available for Mac OS.
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 jumping-off point to give your in-house developers an opportunity to 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, your absolute must-have is 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 a 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 head start.
Unity. Considered the mandatory 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 until you start earning over $100k a year from your app. Finally, the community is unmatched with 45 percent of 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.
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 you must make regarding VR development 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 will you deliver your apps to the audience? Will it be a one-time marketing campaign experienced directly in a store? Or a game that will be available to people at any times on Steam or in mobile stores? Capabilities of different devices can also be different so let’s draw a quick comparison.
Below we review six VR devices, common implementation examples, available SDKs and shipping platforms. You can skim over this table and read the 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 motion — 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 — the 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 the Steam platform, you can distribute applications in the Oculus store. Recently the company rolled out the 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 the 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, not surprisingly, a Samsung smartphone. 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 people not particularly interested in VR can have a device laying around in their house.
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 became accessible to everyone with a smartphone (given you’re located in one of the countries Google ships to). Content for Google Cardboard can be found both 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 from 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 Partners page 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 to 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.
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 leaping aggressively 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 high-powered 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 along.
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 the VR experience. People are also at 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. The cases of severe problems are, however, 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 endeavor. 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 dip 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.
Originally published at AltexSoft Tech Blog “How to Get Started with VR: Intro to Your First Virtual Reality Project”