GPU Profiling for VR: RenderDoc & Snapdragon Profiler

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.

From immersive apps to game worlds and 3D scenes

Our dedicated team for VR/AR/MR development, Unity production and 3D modeling & animation — with its own case studies and capability decks.

Visit the dedicated studio
Showing 1 of 1All 242 services
GPU Profiling for VR: RenderDoc & Snapdragon Profiler
Medium
~3-5 days
Frequently Asked Questions

Our competencies

What are the stages of Game Development?

Latest works

  • image_games_mortal_motors_495_0.webp
    Game development for Mortal Motors
    1388
  • 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
    926
  • image_games_second_team_604_0.webp
    Game development for the company Second term
    544
  • image_games_phoenix_ii_606_0.webp
    3D animation - teaser for the game Phoenix 2.
    592

A VR game on Quest 2 holds 72 fps only in empty scenes; in open locations it drops to 60. Merely reducing resolution helps temporarily: when new objects appear, the drop returns. We take a different path — we first find specific GPU bottlenecks through profiling, then fix them precisely.

VR specifics: on standalone Quest there is no full GPU capture. Tools are selected per platform. For standalone — OVR Metrics Tool and Snapdragon Profiler. For PCVR (SteamVR, OpenXR) — RenderDoc, NVIDIA Nsight, or AMD Radeon GPU Profiler. For Quest via Link — a hybrid approach. Our ten years of experience show that choosing the right tool is half the success.

How to Read GPU Capture in VR Using RenderDoc

RenderDoc is the standard for render pipeline analysis. For VR in Unity, it's integrated via RenderDoc Integration or manually via UnityEngine.Rendering.DebugManager. In Single Pass Instanced mode, RenderDoc shows two viewports in one draw call — this is normal.

The first thing we look at is the Timeline view: it shows the duration of each pass in milliseconds. In a typical VR scene, the heaviest passes are Shadow Map (3+ ms out of an 8–9 ms frame budget), Opaque, Transparent. RenderDoc provides 3–4 times more information about each draw call than Unity's built-in profilers.

In the Drawcall list we search for repeating patterns: the same calls without batching. If a Mesh Renderer is drawn 50 times in separate calls instead of one instanced call, that's CPU-overhead, not GPU.

For GPU bottlenecks we use PIX markers — in Unity via CommandBuffer.BeginSample / EndSample. Markers break the frame into named blocks and directly show GPU time costs. Without them, we'd have to guess which code section a draw call belongs to.

Why Snapdragon Profiler Is Indispensable for Meta Quest

RenderDoc doesn't work on Android-based Quest without PCVR Link. The main tool is Snapdragon Profiler from Qualcomm. It connects via ADB (adb connect) and requires developer mode. Our experience with Quest projects shows that without it, shader overload cannot be accurately measured.

Key metrics: GPU Busy %, Fragment ALU Instructions/Vertex, Textures Fetches per Cycle, L2 Cache Hit Rate. If GPU Busy is constantly 95–100% — GPU-bound; below 70% with drops — CPU-bound. Overdraw is shown as Visibility Ratio. For mobile VR, 1.5–2x is normal; above 3x indicates sorting problems. Snapdragon Profiler provides twice as many metrics as OVR Metrics Tool, especially regarding tiled architecture.

The tile-based architecture of the GPU on Quest (Tile-Based Deferred Rendering) differs fundamentally from desktop: writes are buffered in on-chip tile memory. If a shader or post-processing effect disrupts the flow (reading from a render target that was just written), a tile flush occurs — data is dumped to RAM and reloaded. This is expensive. In Snapdragon Profiler, it shows up as a spike in Tile Flush Count.

Case: 43% GPU Time on a Single Fog Effect (from Our Practice)

Project: an adventure VR game for Quest 2. Complaint: stable 60–65 fps at target 72, with no obviously heavy objects in the scene.

Profiling via Snapdragon Profiler revealed: 43% of GPU time in outdoor scenes was spent on volumetric fog. The effect was ported directly from the PC version: full-screen ray marching with 64 steps per pixel. On Quest this is a disaster — each pixel performs 64 texture fetches.

Solution: replace volumetric fog with pseudo-volumetric fog via Depth Fog in the shader (depth-based fog) plus several large particle planes with a fog texture atlas on near planes. GPU time dropped from 4.2 ms to 0.3 ms. The project saved several thousand dollars in budget. Visually, it's virtually indistinguishable for the end user in VR.

Work Stages

  1. Determine platform and tools.
  2. Collect baseline metrics in several representative scenes.
  3. Analyze and prioritize problems by their contribution to GPU time and complexity of fix.
  4. Develop and implement optimizations.
  5. Verification: re-profile and confirm performance gain.

Typically 3–5 focus points yield 60–70% performance improvement. The rest is diminishing returns.

Stage Timeline
Profiling + report with recommendations 3–5 days
Profiling + fix top-3 issues 1–2 weeks
Full optimization cycle with verification 3–5 weeks

Optimization cost is calculated individually after gaining access to the project and target platform information.

What's Included

  • Detailed report with bottleneck visualization (graphs, profiler screenshots).
  • Optimized shaders and rendering configurations.
  • Recommendations for asset pipeline (LOD, textures, batching).
  • Team training on profiler usage.
  • Guarantee: we baseline metrics and confirm improvement.

Profiling Tool Comparison

Tool Platform Strengths Limitations
RenderDoc PCVR (SteamVR, OpenXR) Deep draw call analysis, PIX markers Doesn't work on Quest standalone
Snapdragon Profiler Quest (ADB) Tiled architecture metrics, overdraw Requires developer mode
OVR Metrics Tool Quest Simplicity, quick baseline Few metrics, no GPU capture

Get a consultation for your project — contact us. Order end-to-end profiling: we evaluate your project in one day and guarantee performance improvement.