Feature suggestion: vsync
First, thank you so much for fastcompmgr, it is really lightweight and works incredible well. It would be even more awesome if there was an option to vsync and stop the terrible tearing of some X11 setups. If there is anything I can do to help to implement that option, just let me know.
I would also love to have such a feature, however, I'm now working full-time for some software-company and have currently not enough resources to implement it myself. However, back then I did some research and found that probably the simplest way to have vsync in fastcompmgr would be to add support for the XPresent extension. I found that, among others, this adds this extension to xfwm4 (but there are some later follow-up commits), for marco see here. Someone with C- and Xlib skills should be capable to adapt this to fastcompmgr -- but it's fairly some amount of work.
I have almost zero skill with Xlib but I will check those and see what progress I make <3
Cool 🙂. In case of (minor) questions, feel free to post them here -- while not an Xlib expert, I may be able to answer. Good luck!
This isn't really needed anymore if you use xlibre btw. The modesetting driver now has TearFree by default.
This isn't really needed anymore if you use xlibre btw. The modesetting driver now has TearFree by default.
Xlibre isn't a clean replacement for Xorg, as many drivers tend to misbehave on it. See Gentoo: Xlibre#Nvidia
One of the primary reasons for using X11 these days is because of hardware-incompatibility with Wayland, like old drivers (for example the 470xx Nvidia driver). If my GPU supported Wayland with good performance, I would switch in a jiffy.
This isn't really needed anymore if you use xlibre btw. The modesetting driver now has TearFree by default.
Xlibre isn't a clean replacement for Xorg, as many drivers tend to misbehave on it. See Gentoo: Xlibre#Nvidia
This was already fixed as they added build options to add compat with the nvidia driver directly.
See https://github.com/X11Libre/ports-gentoo/issues/99
But yeah there is bugs still, I'm actually using a patched version because I ran into an issue with the modesetting driver squishing my mouse cursor.
But the modesetting driver is really needed now, for example the zink driver of mesa doesn't work by default anymore because the amdgpu ddx lacks many DRI3 features needed for it. So it is great I can finally use this with TearFree, it is the only reason I was using that driver before lol
As for the "TearFree" option, it's not in the Nvidia drivers, Nvidia has their own implementation, "Force Composition Pipeline" and "Force Full Composition Pipeline". First one doesn't work (atleast for me), and the second one causes choppiness in games but fixes tearing.
Though I might try this project out, thanks for the suggestion!