Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Opengl 我可以将一个hRC设置为多个hDC吗?_Opengl - Fatal编程技术网

Opengl 我可以将一个hRC设置为多个hDC吗?

Opengl 我可以将一个hRC设置为多个hDC吗?,opengl,Opengl,我可以创建一个hRC并使用wglMakeCurrent()将hRC设置为多个HDC吗?我发现每个窗口都应该具有唯一的hRC和hDC。那么,如何将相同的上下文放到不同的窗口 我可以创建一个hRC并使用wglMakeCurrent()将hRC设置为多个HDC吗 对。您可以在一个特定线程中的特定时间将HGLRC设置为一个特定HDC,但您可以随时切换它。您还可以在同一个HDC上设置任意数量的HLGLRC,每个HLGLRC位于不同的线程中 唯一的限制是,要使HGLRC和HDC成为彼此当前的,必须在其像素格

我可以创建一个hRC并使用wglMakeCurrent()将hRC设置为多个HDC吗?我发现每个窗口都应该具有唯一的hRC和hDC。那么,如何将相同的上下文放到不同的窗口

我可以创建一个hRC并使用wglMakeCurrent()将hRC设置为多个HDC吗

对。您可以在一个特定线程中的特定时间将HGLRC设置为一个特定HDC,但您可以随时切换它。您还可以在同一个HDC上设置任意数量的HLGLRC,每个HLGLRC位于不同的线程中

唯一的限制是,要使HGLRC和HDC成为彼此当前的,必须在其像素格式中兼容

我发现每个窗口都应该有一个独特的hRC和hDC

那是不对的。此外,任何窗口都可能有任意数量的HDC

那么,如何将相同的上下文放到不同的窗口

通过使用新的HGLRC-HDC组合调用wglMakeCurrent,在进行调用的线程中产生电流

我可以创建一个hRC并使用wglMakeCurrent()将hRC设置为多个HDC吗

对。您可以在一个特定线程中的特定时间将HGLRC设置为一个特定HDC,但您可以随时切换它。您还可以在同一个HDC上设置任意数量的HLGLRC,每个HLGLRC位于不同的线程中

唯一的限制是,要使HGLRC和HDC成为彼此当前的,必须在其像素格式中兼容

我发现每个窗口都应该有一个独特的hRC和hDC

那是不对的。此外,任何窗口都可能有任意数量的HDC

那么,如何将相同的上下文放到不同的窗口


通过使用新的HGLRC-HDC组合调用wglMakeCurrent,在进行调用的线程中产生电流。

但我使用GetDC(hWnd)从hWnd获取HDC,使用wglCreateContext(HDC)获取HGLRC。他们三个之间不是有关系吗?我从当前hDC创建的hGLRC可以在另一个具有相同pixelformat的hDC中使用,这是您的意思吗?@whiack:否,传递给wglCreateContext的DC仅用于查询配置了GLRC的(DC的)pixelformat。就这样,他们之间没有任何牵连。是的,使用一个DC创建的GLRC可以用于配置为相同像素格式的完全不同的DC(即使来自不同的窗口)。wglCreateContext引用:“wglCreateContext函数创建一个新的OpenGL渲染上下文,它适合在hdc引用的设备上绘制。渲染上下文与设备上下文具有相同的像素格式。”但我使用GetDC(hWnd)从hWnd获取hdc,使用wglCreateContext(hdc)获取hGLRC。他们三个之间不是有关系吗?我从当前hDC创建的hGLRC可以在另一个具有相同pixelformat的hDC中使用,这是您的意思吗?@whiack:否,传递给wglCreateContext的DC仅用于查询配置了GLRC的(DC的)pixelformat。就这样,他们之间没有任何牵连。是的,使用一个DC创建的GLRC可以用于配置为相同像素格式的完全不同的DC(即使来自不同的窗口)。wglCreateContext参考:“wglCreateContext函数创建一个新的OpenGL渲染上下文,该上下文适用于在hdc引用的设备上绘制。渲染上下文与设备上下文具有相同的像素格式。”