Research Article

Synchronous Remote Rendering for VR

Figure 1

The three states of the synchronous system. (1) Local latency: all steps are complete within the refresh interval; latency is the same as local rendering. (2) Reduced framerate: the system cannot finish within the deadline, and fps will thus be reduced to half. (3) Delay injection: one frame delay is injected into the system. It is initialized by sending an extra input packet after decoding which will trigger parallel processing of two frames from then on, both delayed by one frame. The white Sync-bar is implementation-dependent and in this case refers mainly to the time consumption of the function WaitGetPoses() in the OpenVR API [75], which will return “running start” milliseconds before the next VSync deadline, typically 2 ms [76].