Mobile Native SDK Migration Guide

This section details migrating from earlier versions of the Mobile SDK for native development.

Note: For information on releases older than listed, see Mobile Native Migration Guide - Archive.

Migrating to Mobile SDK 1.25.0

This section is intended to help you upgrade from the Oculus Mobile SDK version 1.24.0 to 1.25.0.


There are no developer-facing changes in this release.

Bug Fixes

  • An issue with stale frame judder on Oculus Quest when the latency mode is set to VRAPI_EXTRA_LATENCY_MODE_OFF has been resolved.

Migrating to Mobile SDK 1.24.0

This section is intended to help you upgrade from the Oculus Mobile SDK version 1.23.0 to 1.24.0.


This release adds support for several new Vulkan features, all of which are demonstrated in the VrCubeWorld_Vulkan sample included with the SDK. These features are as follows:

  • Vulkan Fixed Foveated Rendering
  • Vulkan Multi-View
  • Vulkan MSAA support

Additionally, protected content rendering is now supported on both Oculus Quest and Oculus Go.

VrApi Changes

  • The vrapi_CreateAndroidSurfaceSwapChain2 function has been added to create an Android Surface SwapChain as a protected resource.
  • The vrapi_GetTextureSwapChainBufferFoveationVulkan function has been added to acquire the foveation Vulkan image associated with the SwapChain.
  • A new ovrSystemStatus, VRAPI_SYS_STATUS_USER_RECENTER_COUNT, has been added for retrieving the number of user-initiated recenter operations.
  • A new ovrFrameLayerFlag, VRAPI_FRAME_LAYER_FLAG_FILTER_EXPENSIVE, has been added to enable expensive filtering for a layer. This option is only useful for 2D layers that are high resolution (such as a remote desktop layer), typically double or more the target resolution.
  • Deprecated extended FrameParms support has been removed.
  • vrapi_GetEyeViewMatrix has been removed from VrApi_Helpers.h. See VrAppSupport/VrModel/Src/SceneView.cppGetEyeViewMatrix for a valid replacement.

LibOVRKernel Removed

LibOVRKernel has been removed from the SDK. Most LibOVRKernel usage was replaced by the C++11 Standard Library equivalent. Any functionality that was not replaced was moved into header files at 1stParty/OVR/Include.

Migrating to Mobile SDK 1.23.0

This section is intended to help you upgrade from the Oculus Mobile SDK version 1.22.0 to 1.23.0.


This release provides support for Samsung Galaxy S10 smartphone.

VrApi Changes

  • Added Samsung Galaxy S10 Device Type to the API.
  • New ovrTrackingStatus flags were added: VRAPI_TRACKING_STATUS_POSITION_VALID and VRAPI_TRACKING_STATUS_ORIENTATION_VALID. Prior to these status bits, it was unclear how to treat orientation and position data when the TRACKED status bits were unset. The new VALID bits indicate whether the value delivered is usable for rendering or other computation. When the TRACKED bit is unset, but the VALID bit is set, the provided pose is usable, but is the result of some model or estimation heuristic.