I am working on an application that renders an image from camera to multiple windows.
The application is running on Ubuntu using X.
Xorg.conf is configured to use a single X-screen for all connected monitors.
Desktop is displayed across all monitors.
I am using the following calls to make the window full screen
win = glfwCreateWindow(width, height, “Name”, null, null);
glfwSetWindowPos(win, monitorOffset, 0);
glfwSetWindowMonitor(win, monitor, monitorOffset, 0 width, height, refreshRate);
If I try to create a full screen by passing the monitor during the CreateWindow call then both windows are created on the main monitor.
When I run the application on a single monitor in full screen the call to glfwSwapBuffers return immediately. When I render to 2 monitors (2 glfw Windows) in full screen, both calls to glfwSwapBuffers block for 14-16ms.
-
Is it possible to avoid tearing running 2 full screen windows with the above configuration? As I understand it since there is only 1 X-screen the v-sync can only sync to one physical monitor.
-
Why does the call to glfwSwapBuffers blocks in case of using more then 1 display in full screen?