Add support for GLX_INTEL_swap_event

Review Request #119656 - Created Aug. 8, 2014 and submitted

Information
Fredrik Höglund
kwin
master
Reviewers
kwin
graesslin, luebking

This extension provides an event that indicates when a previously queued buffer swap has completed.

This patch makes kwin use the event to defer rendering after a glXSwapBuffers() call until the swap has completed. This should ensure that GL calls won't block until a new back buffer becomes available, and can also potentially improve animation smoothness.

But this can be improved upon futher. The event includes a timestamp indicating precisely when the page flip occurred, and this could be used to estimate when we need to start rendering the next frame.


  

Issues

  • 3
  • 6
  • 0
  • 9
Description From Last Updated
do you really intend to have this as first-come-first-serve? If there are two X11EventFilters which would monitor the event the ... Martin Flöser Martin Flöser
is there no xcb replacement for glXSelectEvent? Martin Flöser Martin Flöser
looks like this raises XCB requirement to 1.10? at least we have build failing with 1.9.1 on openSUSE Hrvoje Senjan Hrvoje Senjan
Fredrik Höglund
Fredrik Höglund
Martin Flöser
Fredrik Höglund
Martin Flöser
Martin Flöser
Fredrik Höglund
Martin Flöser
Fredrik Höglund
Martin Flöser
Fredrik Höglund
Review request changed

Status: Closed (submitted)

Hrvoje Senjan

   
glxbackend.h (Diff revisions 3 - 4)
 
 

looks like this raises XCB requirement to 1.10?
at least we have build failing with 1.9.1 on openSUSE

  1. it also fails on build.kde.org

  2. @Hrvoje: could you try http://paste.kde.org/psvktnvd0 - I would assume that makes it compile again.

  3. strange what paste did with my patch. Better look at http://paste.kde.org/plovzv2il

  4. will try

  5. almost ;-) http://paste.opensuse.org/89345469

  6. please try: http://paste.kde.org/pniczec1n

  7. closer http://paste.opensuse.org/76709212

  8. ok, next try: http://paste.kde.org/pagchlgat

  9. yay! builds now

  10. dance pushed the patch. Thanks for testing!

Loading...