Unreal Game Engine
Unreal is distributed with Oculus plugins which make it easy to develop applications for Oculus Go and Oculus Rift platforms.
The Unreal Game Engine provides integrated support for VR applications that target the Oculus Go and Oculus Rift S headsets. This enables your applications to support stereoscopic rendering, orientation tracking, and positional tracking (on the Oculus Rift S).
This document is your main guide for targeting these headsets, although cross references are provided for the Oculus Mobile SDK and PC SDK developer guides, as well as the Unreal guides from Epic Games.
The easiest way to create Unreal applications is to use Unreal Blueprints, which is a visual programming system. Here is a portion of a Blueprint script which includes Oculus-specific functions:
If you are not already familiar with Blueprints, Epic Games provides several videos and tutorials to help you get started. You should have a basic working knowledge of Blueprints programming before proceeding with this developer guide.
UE4 Royalty Payment Program
At Oculus Connect 3 in 2016, Oculus and Epic announced that Oculus would pay the royalties for any VR app developed using the Unreal Engine and sold through the Oculus Store, up to $5,000,000 USD in application revenue. In order to participate in this program you must opt in through your Oculus Developer Dashboard. Read more on the UE4 Royalty Payment Program page.
How to Use This Guide
Quick Start: To get started developing Unreal applications for the Oculus headset that you wish to target, please see:
Controllers: To handle input events generated by the controllers (Oculus Touch and Oculus Go controllers), please see:
Audio: For an overview of VR audio features, please see:
- Audio: Provides a quick introduction to common audio tools for Unreal VR applications, along with pointers to external documents and code samples.
Rendering: To enhance rendering quality and optimize the frame rendering rate, please see:
User Experience: To provide the best possible user experience, please see:
- Oculus Dash: Describes how to support the Oculus Dash environment from within Unreal applications.
- Splash Screens: Describes how to use splash screens during application load time, and during UE4 Level transition times.
- Social Applications and Revenue: Provides an overview of the Oculus Platform social and revenue functions, with links into the Oculus Platform SDK documentation.
- Oculus Rift: Mixed Reality Capture: Describes how to incorporate live video feeds into your Unreal applications.
Reference: For a complete reference guide to all Oculus Unreal functions, please see:
- The Oculus Platform supports features related to security, community, revenue, and engagement such as entitlement checking, matchmaking, in-app purchase, VoIP, and cloud saves. For more information on the Platform Unreal plugin, see the Unreal Getting Started Guide in our Platform documentation.
- The Oculus Avatar SDK assists developers with implementing first-person hand presence for the Rift and Touch controllers. It includes avatar hand and body assets that are viewable by other users in social applications. The first-person hand models and third-person hand and body models supported by the Avatar SDK automatically pull the avatar configuration choices the user has made in Oculus Home to provide a consistent sense of identity across applications. For more information, see our Avatar SDK Developer Guide.
- The Oculus Audio SDK includes spatialization plugins (OSPs) that provide Head-Related Transfer Function (HRTF) spatialization and reverb modeling for audio editing tools commonly used with Unreal, including Audiokinetic Wwise and FMOD Studio. See Audio for more information.
Facebook 360 Capture SDK
- This sample SDK allows game and virtual reality developers to easily and quickly integrate 360 photo/video capture capability into their applications. It is available for use with Unreal VR applications, and may be downloaded from the Facebook GitHub repository.