Foveated Rendering
Foveated rendering is a technique that renders the center of the user's visual field at full resolution while rendering the periphery at reduced resolution, exploiting the fact that the human eye perceives detail only in a small central region — the fovea — and has dramatically lower acuity toward the visual periphery. By concentrating rendering work where the eye actually resolves it, foveated rendering can reduce GPU load by 30–70%, enabling higher frame rates, higher resolution, or more visual complexity for the same hardware budget.
The Perceptual Basis
The fovea centralis — the small region of the retina responsible for sharp central vision — subtends approximately 2–5 degrees of visual angle.5 Within this region, photoreceptor density is at its maximum, and the eye can resolve fine detail. Outside the fovea, acuity drops sharply: at 10 degrees eccentricity, spatial resolution is roughly 25% of foveal, and at 20 degrees it falls to 10% or lower. Peripheral vision is tuned for motion detection rather than detail.
XR headsets render large fields of view — typically 80–120 degrees horizontally — but the user can only perceive detail in a small central region at any moment. Rendering the full field at uniform resolution wastes GPU cycles on peripheral pixels the user cannot distinguish at full quality.
Fixed vs. Eye-Tracked Foveated Rendering
Fixed foveated rendering applies a static resolution reduction pattern centered on a fixed point — typically the center of each display. This requires no eye tracking hardware and provides a moderate GPU saving, but mismatches the actual gaze direction whenever the user looks off-center. For applications where the user's gaze is predominantly centered (watching video, reading, forward navigation), fixed foveation is effective. For applications with wide gaze excursions, the reduction region can appear as a visible quality boundary.
Eye-tracked foveated rendering (ETFR) dynamically adjusts the high-resolution region to follow the user's actual gaze direction as detected by the headset's eye tracking hardware. This maintains perceptual quality regardless of where the user looks while achieving larger GPU savings — the full-resolution region can be smaller (3–5 degrees) since it is correctly positioned. Meta Quest Pro introduced ETFR on the Quest platform; Apple Vision Pro uses eye-tracked foveated rendering internally as part of its rendering architecture.1
Variable Rate Shading
Modern GPUs implement foveated rendering through Variable Rate Shading (VRS) — a GPU feature that allows the shading rate (the number of pixels computed per shader invocation) to vary spatially across the render target. In the foveal region, every pixel is shaded individually (1×1 rate); in the periphery, a single shader result is spread across 2×2, 4×4, or larger tiles.2 VRS is exposed on Vulkan via VK_KHR_fragment_shading_rate and on DirectX 12 via Tier 2 VRS, and is supported by ARM Mali, Qualcomm Adreno, and Apple GPU families that power mobile XR devices.
The Saccade Problem
Eye movements are not smooth — gaze jumps between fixation points in rapid movements called saccades, covering distances of 10–50 degrees in 20–200 milliseconds. If the foveal region updates too slowly after a saccade, the user lands on low-resolution content for a perceptible moment before the high-resolution region catches up.
The accepted mitigation is saccade prediction: using the eye tracker's velocity data to anticipate where the gaze is heading and pre-position the high-resolution region slightly ahead of the current fixation. For foveated rendering to be perceptually transparent, the combined latency from eye movement to updated rendering must remain below approximately 10–15ms — a tight budget that requires both fast eye tracking and low rendering pipeline latency.4
Current Device Support
- Meta Quest Pro: eye tracking + ETFR via Compositor Layer and App SpaceWarp
- Meta Quest 3: fixed foveated rendering (no eye tracking hardware on base model)
- Apple Vision Pro: eye-tracked foveation built into the rendering pipeline; not directly exposed as a developer control — handled by the system compositor
- HoloLens 2: eye tracking available; developer-accessible for gaze-based interaction; foveated rendering support via OpenXR extensions3
See also: Rendering & Display · Eye & Gaze Tracking · Vergence-Accommodation Conflict · Apple Vision Pro · Microsoft HoloLens