What is Motion-to-Photon (M2P) Latency?
Motion-to-Photon (M2P) latency is the absolute most critical metric in Virtual Reality (VR) and WebXR development. It measures the total time it takes for a physical user movement (like turning their head) to be fully reflected as a new pixel on the headset's display.
The pipeline consists of: IMU Polling (1ms) → App Rendering (CPU+GPU) → WebGL/WebXR Compositor → Display Scanout & Illumination. Every single step adds latency, and developers must aggressively optimize rendering to keep the total pipeline as short as possible.
The 20ms Nausea Threshold (Cybersickness)
Human vestibular systems (the inner ear) are incredibly sensitive to discrepancies between physical motion and visual feedback. If you turn your head, but the virtual world takes too long to catch up, the brain interprets this mismatch as poisoning, triggering nausea (simulator sickness).
Extensive research by Oculus and Valve established the 20ms Rule: Total Motion-to-Photon latency must stay below 20 milliseconds. If the simulator above shows your latency crossing the yellow 20ms threshold line, your WebXR application will induce severe nausea in users.
Frame Pacing & Strict V-Sync Windows
Unlike PC gaming where a late frame just causes a minor stutter, VR relies on strict V-Sync (Vertical Synchronization) deadlines. Displays refresh at exact intervals: 90Hz requires a frame every 11.11ms, and 120Hz requires one every 8.33ms.
If your WebXR app takes 12ms to render on a 90Hz headset, it completely misses the 11.11ms V-Sync deadline. The headset cannot display a half-drawn frame, so it drops the frame entirely. The user sees the old frame for a second cycle, violently breaking the illusion of reality.
Reprojection (ATW & ASW)
To combat dropped frames, modern VR runtimes use Asynchronous TimeWarp (ATW) and SpaceWarp (ASW). If a frame misses the deadline, the runtime intercepts the rendering pipeline. It takes the previous successful frame and mathematically warps it based on the newest IMU head tracking data, injecting a Synthetic Frame to hit the deadline.
While ATW prevents immediate nausea, it causes visual artifacts (judder, ghosting) and positional drifting, especially on controllers. Relying on reprojection is a failure of optimization. Your WebXR app should hit native framerates without triggering reprojection.
Dynamic Foveated Rendering (DFR)
High-end headsets like the Apple Vision Pro and PSVR2 include internal cameras that track your pupils. Dynamic Foveated Rendering (DFR) exploits the fact that human eyes only see sharp detail in the absolute center of vision (the fovea).
By actively tracking your eyes, the GPU renders the center of your vision at 100% resolution, while drastically reducing the resolution in your peripheral vision. This can reliably slash GPU render times by 30% to 50%, allowing heavy WebXR applications to hit strict V-Sync deadlines that would otherwise cause dropped frames.
Silicon Architectures: Apple R1 vs Snapdragon XR2
Not all headsets process sensor data equally. The physical silicon directly dictates the absolute minimum M2P latency possible before the WebXR app even starts rendering:
- Apple Vision Pro (R1 Chip): Apple utilizes a dedicated coprocessor (the R1) specifically designed to process 12 cameras, 5 sensors, and 6 microphones with virtually zero latency. It streams images to the displays within 12 milliseconds, making it the fastest commercially available headset for M2P latency.
- Meta Quest 3 (Snapdragon XR2 Gen 2): Qualcomm's flagship XR chip integrates sensor processing into a unified SoC. While highly efficient for standalone gaming, its base OS and sensor polling latency is slightly higher than dedicated silicon architectures.