October 13th is the official launch date of the Oculus Quest 2, and with millions of Quests now in gamer’s hands, some are no doubt going to want to figure you how to develop games for them. This is a quick overview of the various different technical options and tools for developing games on the Oculus Quest 2.
The very first thing you are going to want to do is visit the Oculus Quest Developer Portal, the central repository and jumping off point for Oculus VR development. You are also eventually going to have to register to get your developer keys, which are required to deploy your completed game onto a headset. We will cover this in a later tutorial. For now let’s look at some of the options available for Quest 2 game development.
Oculus release a set of low level C++ development tools for creating your own game or application basically from scratch. Native development is ultimately Android NDK development and requires Android Studio to be installed, as well as the Oculus Mobile SDK. There are a number of C++ code samples to get you started. Only take this option if you are an experienced coder and want to work at a very low level.
Unity Game Engine
The Unity game engine is perhaps the most commonly used game engine for VR development today. The Quest 2 is fully supported and you get a huge amount of starter content and tutorials to get you going. Oculus have getting started with Unity guides available here.
After the Unity game engine, Unreal is probably the next most commonly used game engines for VR development. Like Unity, Oculus have getting started materials for Unreal Engine available as well. If you are having trouble deciding between Unreal and Unity, check out this video comparing the two.
The open source Godot game engine is another option for Oculus Quest development. There is a Oculus Mobile plugin available here as well as the Quest specific Quest Toolkit for Godot, which ships with tons of examples to get you up and started.
CryEngine can be used for Quest 2 development, as evidence by The Climb. Unfortunately CryEngine mobile and VR support is only available in a private beta currently. Additionally the Lumberyard game engine supports VR development, but currently only desktop platforms. You can run Rift and Vive games on the Quest, but using Lumberyard you can’t currently do native development.
One of the easiest and quickest to get up and running is creating browser based VR games that can be run on the Quest 2. Here one of the easiest options is A-Frame where you can create 3D worlds using simple HTML-esque markup. Three.JS is the technology A-Frame is built upon and is another option, while the higher level PlayCanvas game engine has VR support as well.
You can learn more about the Oculus Quest 2 and the development options available in the video below.