在 Windows 上我做
HGLRC glContext = wglGetCurrentContext();
HDC deviceGLContext = wglGetCurrentDC();
wglMakeCurrent(glContext, deviceGLContext);
在 Linux 上,有类似的函数分别用于获取当前 GL 上下文和当前设备上下文glXGetCurrentContext
和glXGetCurrentDisplay
。但我坚持
Bool glXMakeCurrent( Display *dpy,
GLXDrawable drawable,
GLXContext ctx )
我不知道如何处理第二个参数。我使用Qt做 GUI,但我仍然需要几个 Windows API 函数,其中包括上面提到的三个。
如何以glXMakeCurrent
文章开头描述的相同方式进行调用?问题是我不知道如何获得GLXDrawable
.
我需要获取一个 GLXContext,然后创建另一个共享显示列表,并使其在另一个线程中成为当前的,将其添加到 OpenCL 上下文属性中。关键是我需要能够使它成为最新的。