Compositor (X11)

From Linux Gaming
Revision as of 12:44, 25 April 2022 by Aragorn (talk | contribs) (→‎KDE)
Jump to navigation Jump to search

If you use a DE with X11, then you probably have a compositor. The compositor does nice things like window shadow and effects. But it also reduces fps, adds input lag, and introduces stuttering. That's why you should disable it when running a game.

Disabling composition for your games

Disabling composition will dramatically improve input lag and "smoothness". Here is how to do it:

Gnome

This is the default DE on Pop!_OS.

You don't have to do anything. Gnome uses unredirection (the same thing Windows does), which is almost as good as disabling compositon. Disabling composition in Gnome is not possible.

KDE

This page needs work, for the following reason(s): It may be that Steam and Heroic automatically disable composition. But I don't know.


  • For Lutris:
    • To disable it for a single game: Right click the game -> Configure -> System options -> Disable desktop effects.
    • To disable it for all games: Click ... in the top right corner -> Preferences -> Global options -> Disable desktop effects
  • You can manually disable composition with shift + alt + f12 before launching a game. The same combination re-enables it.
  • You can use Autocomposer. This should make it unnecessary to do anything of the above.
  • If you want to use a terminal command (for example for automation, launch options for Steam, etc):
    • disable: qdbus org.kde.KWin /Compositor suspend
    • enable: qdbus org.kde.KWin /Compositor resume

Cinnamon

This page needs work, for the following reason(s): I don't know whether the procedure for disabling composition in Cinnamon actually works. In case this does not work, you should not be using Cinnamon. If you want a DE that looks a bit like Windows, you should choose KDE Plasma instead. Please edit if you know more.

Go to settings -> general -> disable compositing for full-screen window

Xfce:

  • Disable composition with $ xfconf-query -c xfwm4 -p /general/use_compositing -s false[1]
  • Enable it again with $ xfconf-query -c xfwm4 -p /general/use_compositing -s true
  • For Steam: You can automate disabling/enabling with the launch option: xfconf-query -c xfwm4 -p /general/use_compositing -s false; %command%; xfconf-query -c xfwm4 -p /general/use_compositing -s true[2]

References and notes