KDE桌面效果中的OpenGl和XRender有什么区别?

Nej*_*jat 25 linux opengl kde

在KDE环境中,当您转到桌面效果时,在高级选项卡中有一个名为"合成类型"的选项,可以将其设置为OpenGl或XRenderer.

  1. 这两个选项有什么区别?

  2. 每个选项的用例是什么?

dat*_*olf 31

OpenGL和XRender都是绘制API,允许应用程序进行某些几何变换.

OpenGL的目标是绘图操作由专用图形处理单元(GPU)执行,并提供许多功能,使得生成3D外观图像非常容易(深度缓冲,深度测试,4×4同质变换矩阵).但是您也可以使用OpenGL进行2D外观图形处理.

XRender是X11的扩展,支持渲染(抗锯齿,alpha混合)的方法,这些方法与核心X11绘图功能无关.XRender-API针对2D外观图形进行了优化(无深度缓冲/测试,3×3变换矩阵).

请注意,XRender与OpenGL不完全正交.特别是如果你需要在OpenGL中进行抗锯齿,你必须使用XRender的一些函数来启用它.

每个选项的用例是什么?

XRender的选项是支持没有适当的OpenGL支持(缺乏稳定的驱动程序)的系统,但可以支持XRender操作.此外,XRender比OpenGL更容易设置(从程序员的角度来看).

一般而言,从程序员的角度来看,OpenGL比XRender更灵活.如果您要问每个应该选择哪一个:从OpenGL开始,如果一切正常,请坚持下去.如果OpenGL无法正常工作,XRender选项就是一个后备(但是现在在XRender驱动程序中,XRender与OpenGL共享很大一部分,或者实际上是使用OpenGL实现的,因此不再有任何实际区别).

  • 关于使用XRenderer的KDE,你不太可能遇到问题,特别是使用KDE 5 Plasma和|或nvideo卡. (9认同)
  • 已确认,我现在使用 XRender,因为 OpenGL 仍然导致 Nvidia 显卡(K2100m)出现太多问题 (5认同)

小智 7

我使用 XRender 是因为带有 OpenGL 的 KWin 喜欢无缘无故地旋转 CPU。

OBS 和在 wine/Proton 中运行的游戏也有一些奇怪的问题。

强烈建议在 nVidia 卡上切换到 XRender!