DevTeam.Space Product Development Blog

Explore our in-depth product development tutorials and new technology announcements published by our software development experts

All articles

VR Application Development: Tips and Tricks

The ’Virtual Reality‘ (VR) industry is growing fast. It‘s sometimes called ’immersive multimedia‘ and represents a virtual environment (VE). The combined VR hardware and software market size reached $2.2 billion in 2017. It is projected to continue its rapid growth in the future, become a US $ 19 billion industry by 2020.

For more on this read “Virtual Reality (VR) – Statistics & Facts” for details about what these  statistics mean.

Are you an entrepreneur planning to launch a VR app? If you are, you may be trying to find out how to develop a VR app. In this guide, I will share some VR application development tips and tricks. Let‘s start by first looking at apps and what features they should have.

Contents

Desired VR app features
Top VR apps to inspire you
Approach # 1: Develop a VR app using Headjack
Approach # 2: VR app development with AWS Sumerian
Approach # 3: Make a VR mobile app with Appy Pie
Approach # 4: VR app development for Google Cardboard with Unity

Desired VR app features

Consider including the following features while building a virtual reality application:

  1. The app should work on multiple platforms.
  2. You may have users from all over the world. They shouldn‘t see latency hence you should plan for a good hosting service. Consider using a ’Content Delivery Network‘ (CDN). Read why a CDN is important for apps like VR or live-streaming, in “How To Develop a Live Streaming app?”.
  3. Your VR assets should be secured.
  4. Users should have the flexibility to download content, additionally, they should have an option of watching an adaptive stream.
  5. Transcoding feature is needed for delivering high-resolution files with optimal resolution.
  6. You need a robust analytics solution to grow your business.
  7. The app should allow playback of both 360-degrees monoscopic and stereoscopic video. Read “Monoscopic Vs Stereoscopic Videos: Which 360 Degrees Videos Should You Shoot?” to understand their differences.
  8. Consider ’Spatial Audio‘, which enhances the immersive experience.
  9. A good VR app should have 360-degrees video, interactive game elements, and 3D objects.

Read more about the desired VR app features in this HEADJACK Features webpage.

Top VR apps to inspire you

You and your team can get trendy ideas about virtual reality application development by reviewing popular apps. Here are a few examples:

  1. Allumette: It’s a VR film with an interesting story. It works with HTC Vive, Oculus Rift, and PSVR platforms. It’s a free app.
  2. Colosse: This app has a very good sound design; besides it has high-quality animation. This free app works with HTC Vive, Oculus Rift, and PSVR platforms.
  3. Google Earth VR: You know about Google Earth already. This VR app makes you feel like you are flying around the planet, besides it‘s very enjoyable if you like geography. You can also use its‘ navigation menu and visit landmark sites like the Golden Gate Bridge. This free app works with HTC Vive, Oculus Rift, and Google Cardboard.
  4. Ocean Rift: You can explore the depth of the ocean, visit anywhere you want, and swim beside sharks! You can just watch quietly, or fully experience all the survival horror the game can offer. It costs US $ 10 and works with the Oculus Rift platform.

While this is a representative list of examples, you can check out more examples in “The best virtual reality apps of 2018”. I will now describe a few approaches to create a VR app for business.

Approach # 1: Develop a VR app using Headjack

If you don’t have virtual reality developers on your team, then Headjack could be a good option for you. You don‘t need to engage a virtual reality app development company however, you can still get a faster time-to-market.

Headjack is like WordPress, which allows non-technical people to build a high-quality website. Headjack offers you a range of templates. You can use these to build your VR app quickly, moreover, you don‘t need to code.

However, if you have a ’Unity‘ VR development team, then they create their own templates. Unity is a popular VR development platform. You can get more information about it in the Unity homepage. Your team can learn it using the ’Unity‘ tutorials.

Steps to develop a VR app using Headjack

If your team is non-technical, then you only need to follow these steps:

  1. Sign-up with Headjack.
  2. Upload your 360-degrees (3D) videos, images, and texts.
  3. Use an existing template. They have a comprehensive set of pre-designed templates. You can browse them in their templates webpage.
  4. Export your app to any VR platform.
  5. Use their robust analytics to measure your user engagement.

Optional: Create your own template using the Headjack template API

This is an optional step. If you need heavy customization, then you may need to create your own template. You can use the Headjack templates Unity APIs, however, your team needs Unity VR development skills.

Visit the Headjack documentation webpage, and here you will find extensive instructions for creating your own templates. Here you will learn how to create a basic template first, subsequently, you will add a menu and interactive elements.

VR app features supported by Headjack

Headjack supports all the important VR app features, for e.g.:

  1. It supports multiple platforms.
  2. They provide a performant, reliable, secure, and scalable hosting. There is also a good CDN solution.
  3. It allows users to download content as well as watch an adaptive stream.
  4. Headjack supports automatic transcoding, and an ability to mix video and game.
  5. Both monoscopic and stereoscopic videos are supported.
  6. Spatial audio and an ability to control multiple devices are added advantages.
  7. Headjack has a comprehensive analytics suite.

Advantages of the Headjack approach

You have the following advantages if you use Headjack:

  1. You get a quick time-to-market.
  2. Branding your app is easy. You own your content permanently.
  3. Testing in an iterative manner is easy.
  4. Headjack is based on the Unity VR platform, which is very popular. The platform is vibrant, and it‘s enhanced regularly.
  5. If you have Unity developers, they can easily create good customized templates using the template APIs and comprehensive documentation.

Read more about these advantages in the features webpage of Headjack.

The cost to develop a VR app using Headjack

In this approach, you don‘t need to hire VR app developers. You also don‘t need any separate cloud hosting provider. Headjack has a free tier, which includes one app only. Their ’Pro‘ and ’Studio‘ plans progressively allow you to create more apps, besides they offer you more bandwidth and storage.

There is an ’Agency‘ plan, suitable for VR app development companies. You can create an unlimited number of apps. Visit the Headjack pricing webpage for more details.

Approach # 2: VR app development with AWS Sumerian

This is another approach where you can create a VR app without any VR programming or 3D graphics experience. ’AWS Sumerian‘, or ’Amazon Sumerian‘, lets you create very immersive and interactive VR apps. These can work on all popular VR platforms like Oculus Rift, HTC Vive, HTC Vive Pro, Google Daydream, and Lenovo Mirage.

You can create Android VR apps with it. AWS Sumerian allows iOS development hence you also can create VR app for iPhones. Apart from entertainment-related apps, you can create a VR app for business, for e.g., a virtual classroom to train new employees.

How to use AWS Sumerian

Following are the high-level steps for creating a VR app using AWS Sumerian:

  1. You need to sign-up for AWS Sumerian.
  2. Upload your 3D assets into Sumerian. Supported 3D asset formats are FBX and OBJ. If you need clarity on different 3D file formats like FBX and OBJ, you can read “8 Most Common 3D File Formats of 2018”.
  3. Create your digital host, for narrating your scene. You can use available Sumerian hosts besides you can customize the Sumerian hosts‘ appearance. Visit this AWS YouTube video titled “Introducing Amazon Sumerian Hosts”.
  4. Edit your scene, for e.g., choose a background, add objects, or animate your objects. AWS Sumerian provides a visual editor, additionally, there is also a JavaScript editor.
  5. Publish your scene. AWS cloud store it, besides, it will provide you with a URL.
  6. Run your VR app on a device among the wide range of devices supported by Sumerian.

AWS Sumerian features and advantages

With AWS Sumerian, you get the following features and advantages:

  1. The Sumerian editor is easy-to-use. It‘s based on WebGL and WebVR, therefore you can use your browser to create VR scenes. Visit the “WebGL Fundamentals” website to learn about it. For WebVR, consider reading this Google Developers‘ “Getting Started with WebVR” guide. You don‘t need in-depth knowledge of these.
  2. It’s easy to create an animated 3D character using AWS Sumerian hosts. There is an integration with Amazon Lex, i.e. the AWS service for building conversational interfaces. There is also an integration with Amazon Polly, i.e., a service that turns texts into speech.
  3. Asset management with Sumerian is easy. You can import 3D objects like furniture or buildings into your scene. AWS Sumerian also offers you with a library of pre-built objects, besides, you can import from 3rd party asset repositories. Sketchfab and TurboSquid are examples of such 3rd party repositories.
  4. Build logic in your scenes, using AWS Sumerians‘ visual workflow. You can also use a JavaScript editor to code logic that will control how objects will behave.
  5. In addition to the multi-platform compatibility, remember that AWS has deep cloud capabilities. Hence, your hosting, security, CDN, and Analytics are in good hands!

Read more about the AWS Sumerian features in their features webpage.

AWS Sumerian pricing

In this approach, you don‘t need to hire virtual reality developers. No virtual reality app development company is needed. You will use the AWS cloud hence you don‘t need a separate ’Infrastructure as a Service‘ (IaaS) provider.

AWS Sumerian offers a free tier that lasts for 12 months. AWS will charge you after that, for the resources your app consumes. You can review their pricing plans and calculations in the “Amazon Sumerian Pricing” webpage. AWS provides excellent learning resources for all their products, and you can access them in their “Getting Started Resource Center”. You can also visit the AWS Sumerian user guide.

Approach # 3: Make a VR mobile app with Appy Pie

You can make a VR mobile app with Appy Pie. This company provides you with tools for bringing your best VR ideas to life quickly. You don‘t need to hire skilled VR developers however, you need designers.

Appy Pie provides you with a VR app builder. It‘s a drag-and-drop app builder, therefore, you only need to design your app.

How to use Appy Pie

There are a few simple steps, as follows:

  1. Register with Appy Pie, and enter the business name for your app.
  2. Use a category appropriate for your app. You need to select from various layouts they provide.
  3. You now need to select from the list of features they provide, for e.g. video.
  4. You also need to select system pages from their catalog, for e.g. login.
  5. In each step, you can customize the design. Visit the Appy Pie app-builder webpage for more details.
  6. You need to create your VR assets hence you need skilled VR designers for that.
  7. Once you are ready with your app, you need to publish it in the ’Google Play‘ or ’Apple App Store‘. Remember that Appy Pie is focused on mobile app building.

Appy Pie VR app-builder features

With the Appy Pie VR app-builder, you get the following features and advantages:

  1. You don‘t need to code a mobile app; the app builder takes care of that. However, you need to design your VR assets.
  2. Appy Pie includes a secure cloud hosting. With their paid plans you can get good analytics solution, besides, you can integrate advertising.
  3. Appy Pie offers image recognition and tracking.
  4. You can include location/geo-based augmented reality (AR).
  5. Your app can include 3D VR assets, which you need to create them separately.
  6. The app can include panoramic and 36-degree videos viewer.

The cost to develop a VR app using Appy Pie

How much does VR application development cost with Appy Pie? Visit the Appy Pie pricing webpage to view their various pricing plans. While you don‘t need to hire mobile app developers, you need VR assets designers.

The complexity of your VR app will determine the VR asset designer effort. Besides, the labor market in your geography will determine your manpower cost. You don’t need any separate IaaS provider.

Approach # 4: VR app development for Google Cardboard with Unity

In this approach, you can custom-develop an Android app for use with Google Cardboard or Daydream. Cardboard and Daydream are Google VR platforms. This approach requires VR design and development skills.

As a first step, you need to create a virtual environment. You can use Unity 3D for that. I had earlier mentioned the ’Unity‘ tutorials. However, if you can‘t onboard VR developers, you may need to get professional help.

You now need to create characters for your VR app, using the Unity interface. You need to import packages relevant to VR characters, following which you need to create your characters.

Subsequently, you need to follow the ’Build’ process and test your VR app. Since this is an Android app, you need to enable USB debugging on your device. Subsequently, you need to name your new app and install it in the device. Now you can test your Android VR app.

To make your VR app interactive, you need to code for adding input, so that your app can accept taps on the phone screen as inputs. This approach is complex, and I recommend that you read “How to create a VR app for Android in just 7 minutes”.

The complexity of your VR app will determine the amount of VR development and Android development effort you need. Your geography and the local labor market will also influence your manpower cost. You may need to take professional help if you can’t staff your VR app development team. Additionally, you need to get a ’Mobile Backend as a Service’ (MBaaS) provider, like ’Google Firebase‘. Check out “How To Choose The Best Mobile Backend As A Service (MBaaS)?“ if you need a comparison of different MBaaS providers.