自从我一直使用 Ubuntu 以来,我从来没有经历过撕裂,但最近我已经切换到Arch Linux,并使用了很棒的窗口管理器。由于 awesome 不使用任何复合管理器,因此我在滚动网页时会看到这些烦人的故障。我已经安装了compton并且它可以工作,但是我在启用它时遇到了一些问题。
显卡:GeForce GTX 670和专有驱动程序 (387.34-19)
compton --version: v0.1_beta2.5
compton --daemon --config /dev/null --backend glx
尽管如此,它修复了撕裂。
compton --daemon --config /dev/null --backend xrender
这解决了上述问题,但会自行撕裂。
compton --daemon --config /dev/null --backend xr_glx_hybrid
这修复了问题 #1 和撕裂,但问题 #2。此外,屏幕刷新开始随机出现。我发现我可以通过传递--fading
选项来解决问题 #2,但后一个选项仍然存在。
所以,xrender
工作得很好,因为它不会产生新的错误,但我认为当我拥有带有专有驱动程序的 gpu 时进行调查并不是一个好的决定。这似乎compton
是一堆黑客和技巧,我厌倦了让它正常工作。我尝试过xcompmgr
并没有看到想要的效果 - 滚动过程中出现撕裂。
幸运的是,还有另一种解决方案可以使用ForceCompositionPipeline=On
. 我已经/etc/X11/xorg.conf.d/20-nvidia.conf
正确配置了我的一切,除了输入延迟外,一切都很完美。鼠标指针变得更不灵敏,更平滑。也许,键盘也是,但我不确定(我的意思是,打印我按下的键需要更多时间)。
我正在寻找摆脱撕裂的任何可能性。新的合成管理器以及适当的compton
选项是可以接受的,但后一个问题的解决方案更可取,因为我实际上并不需要合成器提供的所有这些功能,如阴影或褪色。
我能够解决这些问题。正如我所说,要解决问题 #2,请通过
--fading
选项。要提高动画速度或将其关闭(设置 1),您可以传递--fade-in-step
和--fade-out-step
选项。当有xr_glx_hybrid
后端时,我有屏幕刷新,所以glx
更可取。而且我不知道为什么,但我找到了选项--xrender-sync
并--xrender-sync-fence
修复了问题 #1。也许在失败时compton
使用...xrender
glx
我还不能发表评论,但非常感谢您的回答。
您还可以在配置文件中添加这些选项以获得更可重复的设置。