Xlib的Window与GLX的GLXWindow混淆

问题描述 投票:0回答:1

我正在查看使用GLX创建OpenGL上下文的各种示例代码,我对两种类型的窗口对象感到困惑:Xlib使用的WindowGLX使用的GLXWindow,因为在某些示例代码中,它们直接使用Xlib的窗口进行渲染,而在另一些示例中,它们还创建GLX的窗口。我的问题是:

  1. 这两者之间有什么区别?
  2. 我需要同时创建两者,还是只需要创建Window

GLX 1.4文档(还有其他文档吗?)告诉我使用GLXWindow创建glXCreateWindow,并且该文档将Window作为其第三个参数。我不确定这是否应该是GLXWindow的父窗口,或者Window是否被GLXWindow“包装”,文档似乎尚不清楚。有谁知道这应该如何工作以及其背后的原理?为什么有些示例使用GLXWindow,而有些却没有,但它们似乎仍然可以正常工作?

使我感到困惑的另一件事是,某些示例使用glXCreateContext创建其OpenGL上下文,而其他示例(包括GLX 1.4规范)使用glXCreateNewContext。两者似乎都可以在我的库版本中使用,但我不太了解它们之间的区别。

还有glXMakeCurrentglXMakeContextCurrent –对我来说是另一个困惑的来源。

有人可以向我解释这些略有不同的拼写的函数/类型之间的区别,或者将我发送到一些我可以自己了解的在线资源吗?

哦,还有一件事:这些东西仍然与现代OpenGL(3.0+,可编程管道之一)相关吗?或者只是一些我不应该抨击可怜的小马头的旧货? :q

opengl window xlib glx
1个回答
0
投票

因为我从未听说过GLXWindow

© www.soinside.com 2019 - 2024. All rights reserved.