Your Rift app must meet or exceed these guidelines to be considered for distribution on the Oculus Store.
These requirements ensure that your app remains compatible with Oculus runtime libraries and you are mindful of Oculus recommended hardware specifications.
|Hardware||The app meets all graphics and performance guidelines running on the recommended spec system specification with the specified alternative graphics card. (more)|
|SDK||C/C++ apps must be written for Oculus PC SDK version 1.8 or later. (more)|
|Apps that use Audiokinetic Wwise must be built with Wwise version 2016.1 or later. (more)|
|Game Engine||Unity apps must be built with a supported version. (more)|
|Unreal Engine apps must be built with a supported distribution. (more)|
These requirements ensure your app is responsive, performant, and able to render graphics at the quality expected for an Oculus Store app.
|Performance||The app displays graphics in the headset at 90 frames per second. (more)|
|The app displays graphics without judder. (more)|
|Stability||The app runs and installs without crashes, freezes, or extended unresponsive states. (more)|
|Graphics||The app renders without convergence errors or unusual distortion extended unresponsive states. (more)|
|The app renders without visible z-fighting or depth conflict artifacts. (more)|
|The app must either display head-tracked graphics in the headset within 4 seconds of launch or provide a loading indicator in VR. (more)|
|The app must not synchronize animation or physics to an assumed 90Hz frame rate. (more)|
|The app should render head-locked UI elements in a compositor layer to avoid judder if the app misses frames or runs with Asynchronous Spacewarp. (more)|
These requirements ensure your app functions according to Oculus Store standards.
|State||Single player apps must pause when the user removes the HMD or opens the Universal Menu. (more)|
|The app must not submit frames or accept input when the user removes the HMD or opens the Universal Menu. (more)|
|The app must not leave the user stuck at any point in the experience. (more)|
|Usability||Apps that have a 2D desktop mode must launch and be usable on the main display. The user must not be forced to use the HMD or Oculus Touch controllers. (more)|
|The app does not launch with a Windows Firewall dialog box or a Unity graphics mode dialog box. (more)|
|The app must set the audio target to the audio device selected in the Audio Output in VR setting in the Oculus app. (more)|
|Data Integrity||The app must not lose the user's data. (more)|
These requirements ensure your app safeguards the privacy and integrity of Oculus and customer data.
|Security||The app must perform an Oculus Platform entitlement check within 10 seconds of launch. (more)|
|The app must not contain debugger symbolics or files. (more)|
|The app must not contain extraneous files such as marketing assets or libraries for other VR APIs and distribution platforms. (more)|
These requirements ensure your app provides a user experience consistent with Oculus user interaction standards.
|Navigation||Selecting Exit to Oculus Home from the Universal Menu must exit to Oculus Home. (more)|
|Selecting Reset View in the Universal Menu must reset the user’s position and orientation. (more)|
|Input||The app must map all the buttons a user needs to all the controllers that the app supports. (more)|
|The app must not claim Oculus Touch as a supported input device unless Touch position and orientation data facilitate player movement or manipulate the environment. (more)|
|Tracking||The app must meet the requirements for sitting, standing, or roomscale play modes. (more)|
|The app must meet the requirements for front-facing or 360 tracking modes. (more)|