(No Ratings Yet)

How to Make a VR Game for Google Daydream

Virtual reality platforms pose a new challenge for game developers, but they are also an amazing opportunity to deliver new and exciting experiences to players. When compared to high-end desktop offerings such as the Oculus Rift or HTC Vive, mobile VR platforms for Android might seem a little lackluster, but Google’s Daydream platform was made with the goal of providing accessible, high-quality and comfortable mobile VR.

Daydream will become more and more accessible as time goes on, and it will surely change the perception of mobile VR gaming due to its low cost of entry. Google’s Daydream is a new and lucrative platform for game developers, so it is important to know the steps necessary to get started on Daydream development. After following these simple steps, your business will be ready to start creating games for Daydream.

5 Quick Steps on How to Make Google Daydream Games

As the Daydream View headset will only arrive in November, for now, you will need to hack together a development kit. Two devices will be needed for this: a Nexus 6P running Android Nougat (at least 7.0) and another Android phone with KitKat (4.4) or newer version.

Since we do not yet have access to a Daydream View and a Pixel phone, a Nexus 6P takes its place inside a Cardboard-compatible headset. The other device’s screen will be used to simulate the controller via a Bluetooth connection, using the screen in place of physical buttons. You can download a printable version of the controller layout, which you should put over the second phone’s screen.

You have to follow these 5 steps to start developing a VR game for Daydream:

  1. First step: Set up both phones by following the official development kit instructions on Google’s Daydream developers’ page. This involves pairing the two phones through Bluetooth and side-loading the Controller Emulator application on the second one. As an optional step, download and print a copy of the overlay, then put it over the screen of the second device.
  1. Second step: Install the Software Development Kit and any required components of it on the PC you will develop on. Currently, the two main game development platforms for Daydream are Unreal Engine 4 and Unity SDK.
  1. Third step: Start developing your game in the same way you would do with any other regular Android games. Refer to the documentation of your SDK, and follow the Daydream-specific instructions for required settings and build options.
  1. Fourth step: When you feel that your game is ready to be run via Daydream, just side-load it onto the Nexus 6P, or upload it via a USB connection, in the same way as we do with non-Daydream Android apps and games.
  1. Fifth step: Pair the two devices via Bluetooth and run the emulator on the second phone. Put the Nexus into the Cardboard, launch the game on it and place the headset in front of your eyes. If a head-strap is available, utilize it so that you don’t have to hold the headset with one hand. Look around in the game world by moving your head, and manipulate it using the secondary phone. The motion controls of the Daydream controller will be simulated by using the gyroscope of the device.
Have a VR/AR Project in Mind? We Are Here to Discuss


Developing Daydream games on Unity

Google and Unity have a long-term collaboration, from which both platforms benefit. As a result the Unity development kit will have native support for Daydream after its retail release. This entails optimizations for reduced hardware latency and accurate head-tracking.

Unity developers have to download a separate version of the development kit - the Technical Preview of the editor, which includes Daydream-specific features. As it is a separate instance of the editor, you can install this next to any already existing Unity installations without them affecting each other. After the official release of Daydream View, the featureset will be included with the mainline Unity editor, making the separate dev kit unnecessary from that point.

Developing Daydream games on Unreal 4

Unlike the current version of Unity, Unreal Engine 4 already has the Daydream-specific features fully integrated into their editor. You have to enable these manually via a few setting changes and extra installations. First, install the Android NDK version 11c, which is a requirement for enabling these features. Then have Unreal recognize the NDK by browsing to the NDK in the Project Settings / Platforms / Android SDK part. You will also have to build your game with the Support arm64[aka arm64-v8a] option in order for Daydream to recognize it as a valid app. For more information, refer to the official documentation of Unreal Engine.

Control methods and VR-friendly game genres

The developers of Unreal Engine made a short demo to present the capabilities of Daydream: this is a first-person dungeon crawler game, in which the player looks around using head movements and manipulates the world (moves, uses objects and operates the UI) with the motion controller. The Daydream integration of Unreal 4 was used to create this demo, with the goal of showcasing some ideas that work well with mobile VR.

First-person RPGs and puzzle games like the aforementioned example are a good candidate for accessible genres. Since Daydream users will only be able to look around in the game world via head movements, not all game genres work well with the setup of headset plus wireless controller. The controller can simulate one hand of the user, or a pointer inside the game – or even a magic wand, as can be seen in the example of Fantastic Beasts and Where to Find Them, the tie-in game to the upcoming movie.

How AppReal-VR Can Help?

AppReal-VR is your ideal partner for mobile game development, thanks to years of experience in Virtual Reality and Augmented Reality.

AppReal-VR has a good grasp on how to tackle new and exciting technologies, including the Google Daydream platform. We help our customers in exploring and pushing Virtual Reality boundaries while developing new and exciting VR apps.


Leave a Reply

Your email address will not be published. Required fields are marked *