为什么基于 GLX 的应用程序可以 运行 在 Ubuntu 上的 Wayland 上?

How come GLX-based applications can be run on Wayland on Ubuntu?

所以 GLX 是 X11 上 OpenGL 的图形上下文创建和管理系统。但根据设计,Wayland 不兼容 X11,并且为 OpenGL 上下文管理而不是 GLX 实现 EGL。那么,在 Ubuntu 17.10 上基于 Wayland 的会话中,我如何仍然可以 运行 使用 GLX 创建上下文的应用程序(例如 glxinfoglxgears)?是否正在进行一些透明的 GLX 仿真?

此外(因为这可能与上述问题有关)为什么在 Wayland 上 运行 时,这些基于 GLX 的应用程序不能使用 MSAA(例如 glxinfo 不 return 任何支持 MSAA 的上下文类型)——至少在我测试它们的英特尔 GPU 上——而 MSAA 在 运行ning on [=19 时适用于相同的应用程序、GPU 和 Ubuntu 版本=] 而不是韦兰?

所以基于link @genpfault 提供的:

  • XWayland 是 XOrg 的一部分,它在 Wayland 之上提供 X 服务器。任何针对 X11 库 linked 和 Wayland 下 运行ning 的应用程序将自动使用 XWayland 作为其后端。所以 XWayland 的 GLX 部分是允许基于 GLX 的 OpenGL 应用程序 运行 on Wayland 的机制。
  • 无法在基于 GLX 的应用程序中使用 MSAA 似乎是 XWayland 的一个已知错误,至少对于 Intel 和 AMD GPU 而言是这样(参见 https://bugs.freedesktop.org/show_bug.cgi?id=98272 )。但是我找不到关于此事的任何其他信息。