|
Review request for kwin and Martin Gräßlin.
By Thomas Lübking.
Description
This performs a paint & glFlush immediately after the buffer swapping and defers the next swapping to the next anticipated frame (or idling)
The behavior is still not as deterministic as we hoped to be since we cannot measure the time for the actual vsync :\
I set a fuzzyness of 6ms what leads to a majority of 2-3ms times in waitsync but single wait times up to 8 or 9ms occur (what ultimately can be part of the syncing itself)
There's some debug code to print lagging.
TODO:
- attempt egl support
- probably lie to the effects about the time
|
Testing
I've used a CRT for testing which can sync every 11ms ie. 85Hz and lowered the maxFPS down to 10fps with pretty constant results for the time lost waiting for the sync.
|
Diffs
- kwin/composite.cpp (bc29233)
- kwin/options.cpp (19c3ee5)
- kwin/scene.h (d8bcf48)
- kwin/scene.cpp (413e46f)
- kwin/scene_basic.h (a087eb5)
- kwin/scene_basic.cpp (cc8dbdd)
- kwin/scene_opengl.h (e13d8a5)
- kwin/scene_opengl_egl.cpp (22e082c)
- kwin/scene_opengl_glx.cpp (ddebcd0)
- kwin/scene_xrender.h (6c916c8)
- kwin/scene_xrender.cpp (3618d79)
- kwin/workspace.h (e4db7e7)
- kwin/workspace.cpp (70b2df8)
View Diff
|
_______________________________________________
kwin mailing list
kwin@...
https://mail.kde.org/mailman/listinfo/kwin