Oculus Mobile SDK 1.0.0.0

This document provides an overview of new features, improvements, and fixes included in the latest version of the Oculus Mobile SDK.

VrApi is now dynamically loaded from a separate APK, allowing it to be updated without requiring developers to recompile applications. This will allow us to fix bugs, support new devices, and add new OS versions without disrupting development.

The VrApi implementation is now deployed as part of SystemActivities, which is automatically updated. When updating to the latest SDK, it is important to make sure the device is online to allow SystemActivities to be automatically updated. If for some reason SystemActivities is not up to date when launching a new application, you may get the message “Oculus updates needed.” To allow the application to run, the SystemActivities will have to be updated.

VrApi now presents the core minimal API for VR rendering. System-level functionality not necessary for VR rendering has been moved to a VrAppSupport/SystemUtils library. This library primarily deals with loading, and with receiving events from the Universal Menu.

Various OpenGL objects may now be explicitly passed to the VrApi. In this case, functions such as vrapi_EnterVrMode and vrapi_SubmitFrame do not need to be called from a thread with a specific OpenGL context current.

All native applications are now built and developed using Gradle and Android Studio instead of ANT and Eclipse. It is important to note that while the command-line Gradle build path is mature, Android Studio support for native development should still be considered experimental. Feedback on our developer forums is appreciated!

Important Change to SystemActivities

The VrApi implementation is now deployed as part of SystemActivities, which is automatically updated. When updating to the latest SDK, it is important to make sure the device is online to allow the SystemActivities to be automatically updated. If for some reason the SystemActivities is not up to date when launching a new application, you may get the message “Oculus updates needed.” To allow the application to run, the SystemActivities must be updated.

If the auto-update function has not delivered the latest SystemActivities to your device, please ensure that you are connected to a working Wi-Fi network. It may take up to 24 hours for the update to trigger, so please be patient. If your development schedule requires a timely update, you may download the SystemActivities APK from this location as temporary relief during this transition period. Future updates should always be processed by the automatic update system on the Gear VR platform.

New Features

VrApi now dynamically loads from a separate APK.

Various OpenGL objects may now be explicitly passed to VrApi, lifting some threading restrictions.

Added support for Gradle and experimental support for Android Studio.

Added support for the Samsung Galaxy S6 Edge+ and Note 5.

TimeWarp Debug Graph may now be toggled on and off during runtime via VrApi Frame flags.

API Changes

vrapi_Initialize now returns an ovrInitializeStatus .

now returns an . vrapi_GetHmdInfo has been replaced with vrapi_GetSystemPropertyInt and vrapi_GetSystemPropertyFloat .

has been replaced with and . ovr_DeviceIsDocked , ovr_HeadsetIsMounted , ovr_GetPowerLevelStateThrottled and ovr_GetPowerLevelStateMinimum have been replaced with vrapi_GetSystemStatusInt and vrapi_GetSystemStatusFloat .

, , and have been replaced with and . Various functions from VrApi_Android.h have been moved to the VrAppSupport/SystemUtils library.

Various performance metrics can now be queried through vrapi_GetSystemStatusInt and vrapi_GetSystemStatusFloat .

Bug Fixes