Unreal is distributed with Oculus plugins which make it easy to develop applications that work with Oculus Go, Oculus Rift, and Samsung Gear VR.
The Unreal Game Engine provides integrated support for VR applications that target the Oculus Go, Oculus Rift, and Samsung Gear VR headsets. This enables your applications to automatically support stereoscopic rendering, orientation tracking, and positional tracking (on the Oculus Rift).
Your applications must explicitly target the headset where they will be deployed. Oculus Go and Gear VR applications use the Oculus Mobile SDK. Oculus Rift applications use the PC SDK. Setup and development differ substantially between the two development environments. For Unreal developers, 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 documents to help you get started. You should have a basic working knowledge of Blueprints programming before proceeding with this developer guide.
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, Oculus Go controller, Gear VR controller and headset touchpad), 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 includes an Unreal package to assist 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.