multiMonitorFullScreen current master

What is the correct method for spanning full screen across multiple monitors with the current OF master. I am on windows.
settings.multiMonitorFullScreen = true;

is not a valid command any more. Or do I have to switch to multiple windows?



Are you creating the window within main.cpp using this?


ofGLFWWindowSettings settings;
settings.multiMonitorFullScreen = true;
settings.setGLVersion(4,1); //or whatever version you need, or leave this out.
settings.windowMode = OF_FULLSCREEN;
ofRunApp(new ofApp());

This still works for me in of_v0.9.8 (although I’m on a Mac, apologies if this response is redundant)

Yes, but I get my first monitor with fullscreen and nothing on the second

Uhhh… someone on Windows should definitely jump in here. On mac, monitors each have their own “Space” by default. This preference has to be disabled in system preferences so that all connected monitors share a single space.

I’m guessing there might be a similar treatment of multiple monitors by default in Windows.

sorry @fresla

It’s been awhile since I used windows / multiple displays but wonder if a setting here:

or with the graphics card control panel:

to choose “extended desktop” will help…

Cool, this kind of solves it but I was also mirroring one screen with my NVIDIA settings that is now in extended mode. I can (mirror) draw with of instead though.

Ok, after a bit of investigation I have some findings on this. FIrstly, the solution suggested by @zach can work well, but requires the screens to all have the same refresh rate, for me this was not possible. Turning of verticalSync does not help this, on a mac it is not real a problem, but using ,multimonitor fullscreen across monitors that are not the same refresh (and I to a lesser degree resolution) will use a lot more resources, I think the system is resampling the frames.

For windows I could not seem to get any form of full screen working at all from a laptop that only lets me have 60hz screen and using other outputs that were 50hz.

In the end I found using the method from the multi window example and setting the windows to the fullscreen size and position of the displays I wanted to target and setting decorated to false in the window setup was the solution. As far as I can tell there is no visual difference between full screen and a decorated window that was the same size as fullscreen and positioned properly. You can still go in and out of fullscreen, but not resize, by using the setWindowshape() and setWindowPosition() methods.

Tabbing to and from the app seems to haver different effects with different driver versions/gfx cards. On OSX I was able to tab to notepad on my laptop screen to read a cue list and the second display (an output to a projector in a show) would remain fullscreen. With this method it seems to be inconsistent.