Rift Virtual Reality Check (VRC) Guidelines

Your Rift app must meet or exceed these guidelines to be considered for distribution on the Oculus Store.

The VRC Validator is available and can be used to verify that your app meets the requirements outlined in this section.

Rift Test Plan

The Rift test plan is the exact criteria we use to test your app during the technical review phase of the app submission process. It explains each requirement in detail, including steps to test and what the expected result is.

Download the Rift test plan:

Rift VRCs

VRCs are dividing into categories of evaluation such as assets that accompany your app, its performance, function, and how it handles input. Following is the current list of VRCs.

VRCDescription
VRC.PC.Asset.1Logo must be on a transparent background.
VRC.PC.Asset.2Store cover art images must have a clear logo without extraneous text, taglines, or banners.
VRC.PC.Asset.3Store cover art must not include text in the top or bottom 20% of the image.
VRC.PC.Asset.4Hero art must include the branding of the app centered in the image.
VRC.PC.Asset.5Screenshots must be representative of the app and don’t contain any additional logos, text, or iconography.
VRC.PC.Asset.6App description, screenshots, and videos must not include HMDs, controllers, or logos for other VR platforms.
VRC.PC.Asset.7Trailer must not be longer than 2 minutes.
VRC.PC.Asset.8Artwork asset text should not use a font smaller than 24 pt.
VRC.PC.Audio.1App must target the audio device selected in the “Audio Output in VR” setting in the Oculus app.
VRC.PC.Audio.2Apps should support 3D audio spatialization, although it is not required.
VRC.PC.SDK.1The app meets all graphics and performance guidelines running on the recommended spec system specification with the specified alternative graphics card and with Asynchronous Spacewarp disabled.
VRC.PC.SDK.2C/C++ apps must be written for Oculus PC SDK version 1.8 or later.
VRC.PC.SDK.3Unity apps must be built with a supported version.
VRC.PC.SDK.4Unreal Engine apps must be built with a supported distribution.
VRC.PC.SDK.5Audiokinetic Wwise must be version 2016.1 or later.
VRC.PC.Functional.1App must install and run without crashes, freezes, or extended unresponsive states.
VRC.PC.Functional.2The app does not launch with a Windows Firewall dialog box or a Unity graphics mode dialog box.
VRC.PC.Functional.3Single player apps must pause when the user removes the HMD or opens Oculus Dash.
VRC.PC.Functional.4The app must not lose the user’s data.
VRC.PC.Functional.5The app must not leave the user stuck at any point in the experience.
VRC.PC.Functional.6If the app supports a desktop mode, it must launch and be playable on the standard display without the use of the HMD or Oculus Touch controllers.
VRC.PC.Functional.7The application must respond to the HMD’s positional tracking as well as orientation.
VRC.PC.Functional.8App must not include non-Oculus HMDs or controllers within the title or Store assets.
VRC.PC.Input.1The app must not submit frames or accept input when the user removes the HMD or opens Oculus Dash.
VRC.PC.Input.2Single-player apps must pause while Oculus Dash is open.
VRC.PC.Input.3Selecting Reset View in Oculus Dash must reset the user’s position and orientation.
VRC.PC.Input.4Selecting Exit to Oculus Home from Oculus Dash must exit to Oculus Home.
VRC.PC.Input.5The app must map all the buttons a user needs to all the controllers that the app supports.
VRC.PC.Input.6The app must not claim Oculus Touch as a supported input device unless Touch position and orientation data facilitate player movement or manipulate the environment.
VRC.PC.Input.7In-game menus should be activated with the menu button on the gamepad controller or the menu button on the left Oculus Touch controller.
VRC.PC.Input.8When picking up objects within the app, use the Touch controller’s grip button rather than the trigger button.
VRC.PC.Input.9If an app is “focus aware”, it must continue rendering while Dash is up, but hide any user hands or controllers and ignore all input.
VRC.PC.Input.10In-application hands and controllers should line up with the user’s real-world counterparts in position and orientation as closely as possible.
VRC.PC.Performance.1App should display graphics and respond to head tracking within 4 seconds of launch.
VRC.PC.Performance.3App must display graphics in the headset at 90 frames per second on Nvidia 970 GPU running Windows 10.
VRC.PC.Performance.5App must display graphics in the headset at 90 frames per second on AMD 290 GPU running Windows 10.
VRC.PC.Performance.6App displays graphics without significant systemic judder
VRC.PC.Performance.7App must render without convergence errors or unusual distortion.
VRC.PC.Performance.8App must render without visible z-fighting or depth conflict artifacts.
VRC.PC.Performance.9The app should render head-locked UI elements in a compositor layer to avoid judder if the app misses frames or runs with Asynchronous SpaceWarp.
VRC.PC.Performance.10The app must not synchronize animation or physics to an assumed 90Hz frame rate.
VRC.PC.Security.1The app must perform an Oculus Platform entitlement check within 10 seconds of launch.
VRC.PC.Security.2The app must not contain extraneous files such as marketing assets, copies of the Oculus SDK, or libraries for other VR APIs and distribution platforms.
VRC.PC.Security.3The app must not contain debugger symbolics or files.
VRC.PC.Tracking.1When configuring the submission metadata for your app, it must meet the requirements for either sitting, standing, or roomscale play modes.
VRC.PC.Tracking.2When configuring the submission metadata for your app, it must meet the requirements for either front-facing or 360 tracking modes.