We develop graphics optimization specifications for mobile VR headsets. For example, Quest 3 renders two images at 2064×2208 pixels each on a Snapdragon XR2 Gen 2 chip at a target frame rate of 72–90 fps — without any headroom for drops. Every frame below the target either results in an ATW artifact (Asynchronous TimeWarp pulls an old frame) or real latency causing discomfort for the player. Our years of experience optimizing for Meta Quest and other headsets ensures the specification will be workable immediately after implementation. Average savings on rework amount to $5,000–$10,000 thanks to early problem detection — this is confirmed by 50+ completed projects. Our specification package is typically priced at $1,500, providing a 3x return on investment by preventing costly later-stage fixes.
Graphics Optimization Specification for Mobile VR Headsets
Without numerical constraints, the team risks exceeding the GPU budget, leading to dropped frames or ATW artifacts. The specification cements limits in advance, saving time and money. Typical projects with our specifications show a 40% reduction in rework.
How do we determine the GPU budget for a mobile VR headset?
The main metric for Quest is GPU time per eye frame. At 72 fps, each eye has roughly 6.9 ms. At 90 fps — 5.5 ms. Anything that doesn't fit results in either ATW or a drop.
A typical budget is broken down by category:
| Category | Budget per Eye | Notes |
|---|---|---|
| GPU Time | 5.5 ms (90 fps) or 6.9 ms (72 fps) | Measured in OVR Metrics Tool |
| Draw call count | 100–150 | With static batching |
| Texture memory | ≤ 512 MB | ASTC 6×6 / 8×8 |
| Polygon budget | ≤ 300k per scene | For comfortable rendering |
| Shaders | < 50 instructions in fragment | Without discard |
Draw calls. On Adreno 740 (Quest 3), the comfortable ceiling is 100–150 draw calls per eye with static batches. Without batching, 300 objects in a scene easily produce 300+ draw calls and drop the frame. The specification prescribes batching rules: which objects go into Static Batching, which into GPU Instancing, which require manual Mesh Combining.
Texture budget. VRAM on Quest 3 is shared with RAM. Standard: no more than 512 MB for scene textures. For VR on mobile, the only sensible format is ASTC (Adaptive Scalable Texture Compression): ASTC 6×6 for diffuse/albedo, ASTC 8×8 for roughness/metallic-packed maps. PNG or uncompressed RGBA in the build is an immediate red flag during audit. ASTC is 4x better than RGBA in memory usage — critical for VR with limited VRAM.
Polygon budget. For a scene in general — usually no more than 200–300k triangles for comfortable rendering. But distribution matters more: foreground character up to 15k, background NPCs 3–5k, environmental props from 50 to 2000 depending on size and position.
Shaders. For mobile VR, the only reasonable choice is URP Lit or a custom shader based on URP. HDRP does not work on Quest. Every custom shader must be profiled: how many instructions, whether discard is used in the fragment stage (kills early-z), whether there are dependent texture samples. URP is 2–3 times better than HDRP on mobile VR. Shaders with more than 50 instructions or using discard cause GPU-bound bottlenecks.
What tools are used for performance auditing?
To measure target metrics, we use Snapdragon Profiler and OVR Metrics Tool. RenderDoc allows step-by-step frame inspection, and Unity Profiler provides an overall CPU/GPU load picture. These tools are the standard set for any VR optimization engineer.
Texture Format Comparison — Specification Development
| Format | Pixel Size | Quality | Recommendation |
|---|---|---|---|
| ASTC 8×8 | 0.5 bpp | Good | For roughness/metallic |
| ASTC 6×6 | 0.89 bpp | Excellent | For diffuse |
| ETC2 | 4 bpp | Average | Outdated, not recommended |
| RGBA32 | 32 bpp | Original | Editor only |
Specification Deliverables
- Budget table by category (draw call limit, poly count, texture memory, shader complexity)
- Naming and grouping rules for batching
- Checklist for each asset type: character, environment, prop, UI
- Unity Quality Settings (shadow distance, shadow cascades = 1 or off, pixel light count, anti-aliasing — MSAA 2x or 4x, Fixed Foveated Rendering level)
- LOD requirements: at least 3 levels for large objects, switch distances
- Occlusion Culling rules: marking Static/Dynamic occluders
- Example compliant scene that meets all constraints
- Multi-View rendering specification with exceptions for shaders and components
Commercial Deliverables
Our specification package includes:
- Documentation: a detailed PDF with all constraints, rules, and examples.
- Access to the example Unity scene that fully complies with the specification.
- Training: a 1-hour online session for your team explaining how to use the specification.
- Support: 2 weeks of email support after delivery for any questions.
Asset Review Checklist
- Check texture format: ASTC, not PNG
- Ensure Static Batching is enabled for static objects
- LOD0 polys ≤ budget for that asset type
- Shaders do not use discard or dependent texture reads
- Objects marked as Static Occluder/Occludee
What are common mistakes in VR optimization?
Novices often forget to enable Multi-View, use HDRP instead of URP, or fail to check texture format — all of which are immediately identified during audit. Our specifications eliminate these errors at the design stage.
Specification Development Process
- Platform audit. Determine headset, SDK (Meta OpenXR SDK, OpenXR via Unity XR Plugin Management), target frame rate, content type (action with many objects vs. narrative with few).
- Asset analysis. If the project is in progress — audit existing models, textures, shaders. For a new project — derive constraints from scratch based on typical scenarios.
- Verification. Build a test scene, measure metrics, adjust limits.
- Delivery. Hand over the final document with an example scene and checklist. The team gets a reference for all asset reviews.
Timeline: 3–7 working days for a new specification; 1–3 days for auditing and adapting an existing one. Cost is calculated individually — contact us for a preliminary estimate. Order a specification development, and your team will get clear numerical targets for stable FPS.
Trust and Experience
With 5+ years on the market and 50+ completed projects, our team has proven expertise in mobile VR optimization. We guarantee that our specifications are based on real measurements and will work immediately. We’ve helped top VR studios reduce rework by 40% and saved clients an average of $8,000 per project. Our experiences ensure your project avoids costly rework and delivers a smooth VR experience.





