Game Compliance Verification with Oculus VRC and SteamVR Guidelines

Our video game development company runs independent projects, jointly creates games with the client and provides additional operational services. Expertise of our team allows us to cover all gaming platforms and develop an amazing product that matches the customer’s vision and players preferences.
Showing 1 of 1 servicesAll 242 services
Game Compliance Verification with Oculus VRC and SteamVR Guidelines
Medium
~3-5 business days
FAQ
Our competencies
What are the stages of Game Development?
Latest works
  • image_games_mortal_motors_495_0.webp
    Game development for Mortal Motors
    663
  • image_games_a_turnbased_strategy_game_set_in_a_fantasy_setting_with_fire_and_sword_603_0.webp
    A turn-based strategy game set in a fantasy setting, With Fire and Sword
    859
  • image_games_second_team_604_0.webp
    Game development for the company Second term
    490
  • image_games_phoenix_ii_606_0.webp
    3D animation - teaser for the game Phoenix 2.
    533

id: 236 slug: oculus-vrc-and-steamvr-guideline-compliance-check title_en: "Oculus VRC and SteamVR Guideline Compliance Check" tags: [vr-ar]

Oculus VRC and SteamVR Guideline Compliance Check

Meta rejects apps by VRC (VR Check) without detailed explanations. Letter will contain violation code — VRC.Quest.Performance.1, VRC.Quest.Security.2 — and two weeks to fix. If review cycle takes 7–10 business days, one rejection means month of lost time. Compliance check before submission — not formality, but part of production pipeline.

Oculus VRC: What's Checked and Where Most Fail

VRC document contains several dozen requirements, divided by categories. Critical for passing:

VRC.Quest.Performance.1 — stable 72 FPS (Quest 2) / 90 FPS (Quest 3) on recommended settings. Meta tests on physical devices. Typical failure causes: too high Draw Call count (>300 without batching), missing Fixed Foveated Rendering, incorrect Eye Buffer Resolution settings. For Quest 2: OVRManager.eyeTextureResolutionScale must be ≤1.0 by default.

VRC.Quest.Performance.2 — app must not overheat device. Tested by thermal throttling test for 10 minutes. GPU-intensive shaders without LOD, constant maximum CPU Clock — guaranteed failure.

VRC.Quest.Security.1 — app doesn't request Android permissions not needed for operation. READ_CONTACTS, ACCESS_FINE_LOCATION in AndroidManifest.xml without justification — rejection. Unity adds some permissions automatically via plugins — must explicitly check final manifest.

VRC.Quest.Input.1 — mandatory Guardian System support and correct behavior on zone exit. App must show Guardian passthrough and not block it with own geometry.

VRC.Quest.Content — content requirements: no 2D-UI without VR-adaptation (flat screens without spatial UI don't pass), no long fade-to-black (>3 seconds without content), no scenes with acceleration above 1.5G without warning.

SteamVR Guidelines: Differences from Meta

SteamVR technically less strict on performance requirements — no fixed FPS threshold, as PC-configurations diverse. Key requirements:

Reprojection support. App must work correctly with ASW (Asynchronous SpaceWarp) and ATW (Asynchronous Timewarp). Geometry rendered in one eye only or incorrect depth buffer data — reprojection will artifact. Verified via SteamVR Compositor Mirror with Reprojection enabled.

SteamVR Input Actions. All inputs declared in actions.json and support rebinding via SteamVR Input Binding UI. Hardcoded buttons without action manifest — won't pass review.

OpenVR SDK version. Outdated openvr_api calls without null checks for optional interfaces — crashes on non-standard configurations.

How Compliance Check Works

Automated audit. Use Oculus Platform Command Line Utility (OPCU) for basic APK checks without store submission. Tool checks manifest, permissions, 64-bit native libraries presence.

Performance audit. Run on target devices with OVR Metrics Tool (for Quest) or SteamVR Frame Timing (for PC). Capture GPU time, CPU time, thermal state for 15 minutes.

Manual VRC checklist check. Go through each document point, document status and if needed — fix method.

User scenario test. Guardian exit, fast headset removal/wearing, scene transitions, system notifications handling (incoming call, low battery).

After audit issue structured report: violation list, criticality (blocks publication / recommendation), fix method with code examples.

Typical Audit Fixes

Remove extra Android permissions via <uses-permission android:name="..." tools:node="remove"/> in custom AndroidManifest.xml. This overrides permissions added by Unity or plugins.

Fixed Foveated Rendering enabled via OVRManager.fixedFoveatedRenderingLevel = OVRManager.FixedFoveatedRenderingLevel.High — usually forget to enable in release build.

Action Manifest for SteamVR generated via SteamVR Input → Save and Generate — but often skip binding UI testing in SteamVR settings.

Check Type Estimated Timeline
Audit + report (without fixes) 3–5 days
Audit + typical violations fix 1–2 weeks
Full support until review pass 2–6 weeks

Cost calculated after initial project inspection and violations scope assessment.