Cameron Gutman
6ae6218043
Refactor Pacer to handle both blocking and non-blocking VsyncSources
2022-11-12 15:08:50 -06:00
Cameron Gutman
2bb2745f91
Enhance frame pacing logic for HDR renderers
2022-05-07 16:21:17 -05:00
Cameron Gutman
f8f5e8e869
Don't discard all excess frames before rendering
...
This prevents the render queue's pacing logic from working and
interferes with renderers that take a full v-sync period between
their waitToRender() and renderFrame() callbacks.
2022-04-24 17:04:32 -05:00
Cameron Gutman
859a5a5e0c
Allow a renderer to opt-out of the render thread and use that for SDL on OGL
2019-04-09 21:46:14 -07:00
Cameron Gutman
e5a8b49c93
Limit the number of queued frames in Pacer to prevent excessive memory consumption if the renderer gets blocked for a while
2019-02-18 12:13:45 -08:00
Cameron Gutman
80a40ac5f9
Increase frame drop threshold
2019-02-16 23:13:35 -08:00
Cameron Gutman
ab4127f940
Use presence of a frame after rendering rather than render time for frame dropping
2019-02-15 22:44:52 -08:00
Cameron Gutman
f03d12b677
Use a separate render thread even with a V-Sync source
2019-02-15 22:09:50 -08:00
Cameron Gutman
78915e0b99
Use a separate render thread when not using frame pacing
2019-01-22 20:31:31 -08:00
Cameron Gutman
1f972b1828
Require several consecutive long render times to drop a frame
2019-01-21 17:58:42 -08:00
Cameron Gutman
c064f87889
Drop a frame if the rendering time exceeds the v-sync period
2019-01-20 19:59:29 -08:00
Cameron Gutman
cfabaf334e
Add frame pacing toggle
2018-12-25 12:57:00 -08:00
Cameron Gutman
a0249b4337
Add video stats for performance overlay
2018-09-25 00:47:59 -07:00
Cameron Gutman
f7d3c10c9d
Plumb the ability to disable V-sync through the video renderers
2018-08-20 18:19:42 -07:00
Cameron Gutman
6b395c816f
Allow Pacer to wait for frames up until a few ms before v-sync for better smoothness and lower latency
2018-08-20 17:53:35 -07:00
Cameron Gutman
345e800abd
Always submit frames to Pacer if it's using a frame queue
2018-08-16 17:59:33 -07:00
Cameron Gutman
8e257ab241
Remove unused function
2018-08-16 00:04:28 -07:00
Cameron Gutman
7d61acb2a8
Use Pacer to drive all rendering
2018-08-15 23:57:03 -07:00
Cameron Gutman
e68a15c825
Move the Vsync logic from VTRenderer into a VsyncSource
2018-08-15 22:02:15 -07:00