解決Deepin Linux + KWin屏幕界面的撕裂問題

筆者是一個苛求顯卡性能的程序員,對坐擁的兩臺“古董”筆記本也一視同仁。這兩臺筆記本,一臺是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得到了實現。

安裝KWin

Deepin目前的版本(15.10.1)默認的窗管是Mutter,而不是KWin。KWin需要手動安裝,安裝下面的包之後,下次啓動系統後窗管就會自動從Mutter切換到KWin:

安裝 systemsettings

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')”這個選項中。每選擇一個方法,設置界面中就會用藍色的框說明該選項可能會導致的後果。

具體的方法見下表:

選項 含義 在X200下的實際效果
Never 禁用垂直同步 於是畫面會撕裂。。。
Automatic 自動選擇垂直同步的方法 不靠譜,往往會選擇並沒有啥用的方法
Only when cheap 只在條件允許的時候進行處理 只會在全屏內容改變(如視頻播放)時起作用
Full screen repaints 全屏重繪製 真正能在英特爾集顯上起作用的方法,完美!
Re-use screen content 複用屏幕元素 電腦卡成了PPT,根本無法正常使用

實踐證明,只有Full screen repaints適合我的X200筆記本。選擇該模式並應用,再拖動窗口,果然不再撕裂了,使用體驗變得順滑了不少!

另外兩種方式中,“Only when cheap”只在播放視頻時能起到防止撕裂的作用。而對於“Re-use screen content”,KDE的開發者表示該模式會在MESA驅動中導致嚴重的性能問題,果不其然,選擇該模式後,電腦就卡成了PPT,動彈不得,延遲爆表!我可是費了很大的勁才把設置還原回來。Linux配備的英特爾集顯驅動就是一種MESA驅動,它最終的表現正應了開發者的警告。

桌面混成器的意義

啓用桌面混成器並選用有效的垂直同步處理方法後,Deepin的體驗有了質的提升。

首先是窗口拖動不再出現撕裂的情況,使得界面的操作體驗更爲舒適流暢,提高了Deepin的規格。

同時,桌面混成器也提高了各種應用程序的界面渲染性能,這是我意料之外的收穫。舉個例子:Typora,基於Electron開發的Markdown編輯器,它的Chromium內核默認沒有啓用硬件加速,在啓用桌面混成器之前滾屏時會有間歇性錯位的現象;Deepin設置,滾屏時雖然很流暢,但也常常會出現界面錯位,影響觀感。上述兩個問題在配置桌面混成器後,竟然在我不經意之間都得到了解決,偶然再使用它們時才發現這一切的轉變。

X61上的OpenSUSE,它的KDE Plasma桌面默認就配置好了混成器,所以一開始就無比流暢。而Deepin在經過調教之後,它的表現也開始不輸於KDE了。電腦要流暢,啓用混成器是王道。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章