需要同步(一个线程,四个opengl上下文,四个FBO,一个渲染纹理)
监视器1监视器2监视器3监视器4
-------------- ------------ ----------- -----------
| window1 | | window2 | | window3 | | window4 |
-------------- ------------ ----------- -----------
我尝试使用glfw示例sharing.c并像这样创建window1
int count;
GLFWmonitor** monitors = glfwGetMonitors(&count);
printf("Monitor count: %d\n", count);
// Open a window and create its OpenGL context
window1 = glfwCreateWindow( g_dispWidth, g_dispHeight, "circle mask", monitors[0], NULL);
这将在监视器[0]上显示全屏窗口,但是当我使用两个窗口时,我只能在监视器1上显示一个窗口(window1)。如果我选择在Monitor2上显示另一个窗口(window2),则window1将隐藏。
答案 0 :(得分:0)
最简单的方法是在4个显示器上跨一个窗口。
然后可以在单个上下文中使用4个视口在不同的监视器上渲染图像。
除非您有多个图形适配器,否则这应该很有效。