解决Deepin Linux + KWin屏幕界面的撕裂问题

解决Deepin Linux + KWin屏幕界面的撕裂问题,第1张

笔者是一个苛求显卡性能的程序员,对坐拥的两台“古董”笔记本也一视同仁。这两台笔记本,一台是2009年的老机器ThinkPad X61,安装了OpenSUSE;而另一台是2012年的ThinkPad X200,用的是Deepin Linux。

按理说,新机器的显卡性能相对于旧机器应当有所改善,可是事实却让我无奈——X200的Deepin下,拖动窗口时画面会有明显的撕裂感,一个窗口被拆成两半,而且在使用SMPlayer播放视频(720p)时,也会有细微但肉眼可辨的撕裂。然而,X61的OpenSUSE却完全不存在这样的问题,拖动窗口时一气呵成,不会撕裂,观感体验要好上不少。

撕裂现象是Deepin在一些老机器上容易产生的问题。Deepin属于比较新的系统,不可能会对旧机型进行细致的优化,其默认的显卡配置(Xorg的配置文件)也不是放之四海而皆准的,因此还得手动解决。但是,Deepin最新适配的窗口管理器(下文简称“窗管”)KWin,能够便捷地解决这个问题。KWin是KDE的窗管,得益于它的桌面混成器(desktop compositor),KDE Plasma桌面得以充分发挥显卡的性能,哪怕是X61所使用的旧显卡都能实现行云流水的使用体验。这一特性也在Deepin版的KWin得到了实现。

Deepin目前的版本(15.10.1)默认的窗管是Mutter,而不是KWin。KWin需要手动安装,安装下面的包之后,下次启动系统后窗管就会自动从Mutter切换到KWin:

Deepin的KWin默认没有启用桌面混成器,所以在KWin下仍然会出现画面撕裂的情况,与默认的Mutter窗管无异。笔者曾以为Deepin团队会针对KWin的性能作出针对性优化,然而事与愿违了。接下来只能手动启用混成器。

桌面混成器的设置位于 systemsettings 包中。这个包是精简版的KDE系统设置程序,只保留了与KWin和网络有关的设置项。使用下面命令直接安装:

安装后,启动器中就会多出一个“KDE系统设置”,如图所示。

打开KDE系统设置,左栏最后一项“显示和监控”即为桌面混成器的设置。点开它:

首先,勾选“Enable compositor on startup”,让KWin在系统启动时自动启动混成器。然后“Rendering backend”(渲染后端)选择“OpenGL 2.0”或“OpenGL 3.1”。

垂直同步是防止撕裂的关键。KDE提供了若干种垂直同步的处理方法,位于“Tearing prevention ('vsync')”这个选项中。每选择一个方法,设置界面中就会用蓝色的框说明该选项可能会导致的后果。

具体的方法见下表:

实践证明,只有Full screen repaints适合我的X200笔记本。 选择该模式并应用,再拖动窗口,果然不再撕裂了,使用体验变得顺滑了不少!

另外两种方式中,“Only when cheap”只在播放视频时能起到防止撕裂的作用。而对于“Re-use screen content”,KDE的开发者表示 该模式会在MESA驱动中导致严重的性能问题 ,果不其然,选择该模式后,电脑就卡成了PPT,动d不得,延迟爆表!我可是费了很大的劲才把设置还原回来。Linux配备的英特尔集显驱动就是一种MESA驱动,它最终的表现正应了开发者的警告。

启用桌面混成器并选用有效的垂直同步处理方法后,Deepin的体验有了质的提升。

首先是窗口拖动不再出现撕裂的情况,使得界面的 *** 作体验更为舒适流畅,提高了Deepin的规格。

同时,桌面混成器也提高了各种应用程序的界面渲染性能,这是我意料之外的收获。举个例子:Typora,基于Electron开发的Markdown编辑器,它的Chromium内核默认没有启用硬件加速,在启用桌面混成器之前滚屏时会有间歇性错位的现象;Deepin设置,滚屏时虽然很流畅,但也常常会出现界面错位,影响观感。上述两个问题在配置桌面混成器后,竟然在我不经意之间都得到了解决,偶然再使用它们时才发现这一切的转变。

X61上的OpenSUSE,它的KDE Plasma桌面默认就配置好了混成器,所以一开始就无比流畅。而Deepin在经过调教之后,它的表现也开始不输于KDE了。电脑要流畅,启用混成器是王道。

deepin--解决屏幕撕裂问题 :从更改Xorg配置文件来解决撕裂。

Linux系统中,如果需要禁止特定ip地址访问来保证系统的安全,只需通过 *** 作iptalbes来实现,下面就给绍下Linux如何禁止某个ip地址访问。 一、概述 这两个文件是tcpd服务器的配置文件

卡死的原因基本都是显卡驱动的原因,集成显卡勉强能用,但是不支持外接屏幕和亮度调节,屏幕滚动的时候也会

出现画面撕裂的情况,属于不能忍受的情况,当开机卡死的时候我们需要先强制让Ubuntu使用集成显卡,然后才能

进入系统,进入系统之后再禁用系统自带的Nvidia驱动,然后安装新的推荐使用的驱动即可,具体 *** 作流程如下:

在开机grub界面,按e,编辑启动 选项

修改参数 “quiet splash” 为 “quiet splash nomodeset” ,之后F10,重新启动正常进入Ubuntu系统

进入系统后让这个设置一直有效的方法是:

跟开机时一样的参数修改,完成后保存文件并关闭,输入以下指令使其生效:

禁用ubuntu默认显卡(集显)驱动

在文件最末尾添加如下参数加入黑名单:

更新内核:

查看驱动状态,无输出则说明已经被屏蔽掉

添加驱动源:

查看合适驱动版本:

这里推荐直接使用 nvidia-390 驱动

重启

重启时,在开机grub界面,按e,编辑启动 选项

修改参数 “quiet splash nomodeset” 为 “quiet splash acpi_osi=linux” ,之后F10,重新启动正常进入Ubuntu系统

开机后查看驱动安装状态:

编辑grab文件执行上一步相同的参数修改,最后更新:

原因: 联想自家的驱动和Ubuntu的驱动产生了冲突,禁用联想自带的驱动即可

将联想驱动加入黑名单:

在文件中添加:

即时生效:

关于Ubuntu主题美化和其它问题解决请移步: Ubuntu 18.04 踩坑记录


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/yw/7243672.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-03
下一篇 2023-04-03

发表评论

登录后才能评论

评论列表(0条)

保存