[kwin] [Bug 470497] Compositor-provided V-Sync is active on fullscreen applications even when turned off in the settings

2023-06-13 Thread Nate Graham
https://bugs.kde.org/show_bug.cgi?id=470497

--- Comment #3 from Nate Graham  ---
Sounds kind of like we need to either hide that setting to avoid misleading
people, or else accompany it with a paragraph of qualifier text in a
ContextualHelpButton. :/

-- 
You are receiving this mail because:
You are watching all bug changes.

[kwin] [Bug 470497] Compositor-provided V-Sync is active on fullscreen applications even when turned off in the settings

2023-06-10 Thread Zamundaaa
https://bugs.kde.org/show_bug.cgi?id=470497

Zamundaaa  changed:

   What|Removed |Added

 CC||xaver.h...@gmail.com

--- Comment #2 from Zamundaaa  ---
> KWin as a Wayland compositor provides V-Sync over all screen content to 
> prevent tearing. As high performance graphics applications like video games 
> often provide their own V-Sync implementation the compositor-provided V-Sync 
> should be disabled to avoid two V-Sync operations in a row

That's not how VSync works; applications can't do VSync. It's a driver (and
hardware) feature that can be optionally turned off by the compositor, and it
can't be stacked or anything like that.


The option *is* wired up in KWin. The problem is the rest of the world... The
option only does something if:
- your kernel driver supports it (should be supported with Intel and AMD, at
least in most cases)
- you're using the legacy driver API. By default KWin does not use this if the
newer atomic API is available, as it has numerous benefits. Tearing support in
the atomic API is still a WIP
- you have an application that requests a presentation mode that allows tearing
(which right now only Vulkan apps can do, as OpenGL does not have a proper API
for this)
- you have the implementation in Mesa for passing this request to the
compositor: https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/18268

For X11 apps, you also need
- the necessary protocol changes that circumvents some unfortunate historical
problems of the "normal" tearing API for X11:
https://gitlab.freedesktop.org/xorg/proto/xorgproto/-/merge_requests/58
- the implementation of that protocol change in Xwayland:
https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/665
- the implementation of the protocol change in libxcb:
https://gitlab.freedesktop.org/xorg/proto/xcbproto/-/merge_requests/38
- the implementation of the protocol change in Mesa:
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/19125

If you're using NVidia, you also need the matching implementations in their
driver, which NVidia will have to provide themselves.

In hindsight, it would've been good to add a disclaimer about the driver side
of things next to the checkbox

-- 
You are receiving this mail because:
You are watching all bug changes.

[kwin] [Bug 470497] Compositor-provided V-Sync is active on fullscreen applications even when turned off in the settings

2023-05-31 Thread Nate Graham
https://bugs.kde.org/show_bug.cgi?id=470497

Nate Graham  changed:

   What|Removed |Added

 CC||n...@kde.org
 Status|REPORTED|CONFIRMED
 Ever confirmed|0   |1

--- Comment #1 from Nate Graham  ---
Can confirm. Looks like it actually isn't even wired up to anything internally.

-- 
You are receiving this mail because:
You are watching all bug changes.