···11-# Frame Timing {#frame-timing}
11+# Frame Pacing/Timing {#frame-pacing}
2233<!--
44Copyright 2021, Collabora, Ltd. and the Monado contributors
···7788A "brief" overview of the various time-points that a frame goes through, from
99when the application gets go ahead to render the frame to when pixels are turned
1010-into photons. This only a single frame, where all of the timings are hit and the
1111-application is single threaded. The HMD also only turns on the display during
1212-the vblank period, meaning the pixel to photon transformation is delayed from
1313-scanout starting to the vblank period (like for the Index).
1010+into photons. This is only a single frame, where all of the timings are hit and
1111+the application is single threaded. The HMD also only turns on the display
1212+during the vblank period, meaning the pixel to photon transformation is delayed
1313+from scanout starting to the vblank period (like for the Index).
14141515* `xrWaitFrame` returns to the application, referred to as **wake_up**.
1616* The app does a logic step to move the simulation to the next predicted
···3434## Main compositor perspective
35353636* @ref xrt_comp_wait_frame - It is within this function that the frame timing is
3737- predicted, see @ref u_rt_predict. The compositor will then wait to
3838- **wake_up** time and then return from this function.
3737+ predicted, see @ref u_pa_predict and @ref u_pc_predict. The compositor will
3838+ then wait to **wake_up** time and then return from this function.
3939* @ref xrt_comp_begin_frame - The app or IPC server calls this function when it
4040 is done with CPU work and ready to do GPU work.
4141* @ref xrt_comp_discard_frame - The frame is discarded.