【问题标题】:Create OpenGL Context only with XCB仅使用 XCB 创建 OpenGL 上下文
【发布时间】:2015-12-21 18:15:21
【问题描述】:

我想只用 XCB 不带 GLX 和 Xlib 创建 OpenGL 上下文。你能告诉我这可能会发生吗?非常感谢。

【问题讨论】:

  • Jes,Qt5 使用 OpenGL 和 XCB,我想使用接缝上下文。
  • @MiroslavAvramov:不,它没有。 GLX 是针对 Xlib 规范编写的,因此您的程序中没有 Xlib 就不能使用 GLX。对不起。如果您使用构建在 Xcb 之上的(现在是标准的)Xlib,则可以将 Xcb 与 Xlib 混合使用。

标签: opengl c++14 xcb


【解决方案1】:

我想只用 XCB 创建 OpenGL 上下文,而没有 GLX 和 Xlib。

你不能。时期。您需要 GLX,因为这就是 X11 执行 OpenGL 的方式。 GLX 是针对 Xlib 编写的。你能做的最好的事情是使用 Xcb GLX 模块来实现一个纯粹的间接 GLX 上下文;但是,您只能使用 OpenGL-2.1,并且所有内容都必须通过 X11 服务器,而不是直接与 GPU 对话的直接上下文。

【讨论】:

  • 这些答案已经过去了一年。有什么更新吗?自己找不到。
  • @Julien:没有什么可以更新的。 GLX 的正式定义建立在 Xlib 之上。这不是 GLX 实现如何工作的一些次要实现细节。 GLX 的规范文档中指出,Xlib 是一项硬性要求。您必须用其他东西完全替换 GLX 才能摆脱 Xlib 依赖。但是,您可以最小化 Xlib 在您的程序中的占用空间。这是一个使用 Xlib 仅用于 OpenGL 初始化和 Xcb 用于其他一切的示例:github.com/datenwolf/codesamples/blob/master/samples/OpenGL/…
猜你喜欢
  • 2018-03-21
  • 2020-07-15
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多