如何使用 nvidia 專有技術獲得無撕裂渲染?
自從我一直使用 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
我還不能發表評論,但非常感謝您的回答。
您還可以在配置文件中添加這些選項以獲得更可重複的設置。
backend = "xr_glx_hybrid"; fading = true; fade-in-step = 0.03; # Choose your own value here fade-out-step = 0.03; # Same as above xrender-sync-fence = true;