derammo Posted April 26, 2020 Share Posted April 26, 2020 (edited) If you set the "Resolution" to something that is smaller than the entire desktop, and your main display is not the left-most display, then DCS tries to be smart about how it places your views. Even though the left offset is not specified anywhere in monitor setup, it will try to fit to your main screen and any screens to the right of that. If it can't, then it will do the pessimistic thing and start at the left edge of your desktop. However, it still seems to try to fit it to include the main display. For example, if you have a tall screen on the left like I do, it will fit the specified extent such that it hits the main screen instead of being off to the top of it. In short, it is trying to be clever. Sometimes it ends up with a good result, sometimes not. Here is my question: Is this algorithm documented anywhere? I am implementing Helios features for viewports and monitors, and I am trying to make Helios correctly generate the monitor setup and viewports. But in these scenarios, DCS won't do what it's told. :) So I really need to know precisely what it will do. This would be a lot of wasted time testing if I have to figure it out from scratch. Edited April 26, 2020 by derammo Link to comment Share on other sites More sharing options...
derammo Posted April 26, 2020 Author Share Posted April 26, 2020 PS: I can always get a deterministic result by just including the whole desktop or at least the left edge in the layout. That's not the question. There are folks who have a left screen they don't want to have DCS draw on, so they can use it for other stuff. Link to comment Share on other sites More sharing options...
derammo Posted May 1, 2020 Author Share Posted May 1, 2020 Hey mods: Could you please try to get me an answer of some sort? I assume you like Helios. If you don’t and don’t want to support its development, that is cool too. Just let me know either way so I don’t spend my time on questions like this :) Link to comment Share on other sites More sharing options...
ED Team BIGNEWY Posted May 11, 2020 ED Team Share Posted May 11, 2020 (edited) We have a unofficial guide here for multimonitor https://forums.eagle.ru/forumdisplay.php?f=454 thanks for the ping on discord, I have asked the team. edit: 0,0 coordinates are always DCS top left corner. Edited May 11, 2020 by BIGNEWY Forum rules - DCS Crashing? Try this first - Cleanup and Repair - Discord BIGNEWY#8703 - Youtube - Patch Status Windows 11, NVIDIA MSI RTX 3090, Intel® i9-10900K 3.70GHz, 5.30GHz Turbo, Corsair Hydro Series H150i Pro, 64GB DDR @3200, ASUS ROG Strix Z490-F Gaming, HP Reverb G2 Link to comment Share on other sites More sharing options...
ED Team Alex Okean Posted May 11, 2020 ED Team Share Posted May 11, 2020 part of 'Config\MonitorSetup\3Cameras.lua' --[[ also you can use "displays" table to perfectly match you configuration . it is generated by DCS automatically. displays table is contains information about all currently attached displays for example my setup is : displays = { [1] = { x = 0, -- note : x == 0 and y == 0 is always mark primary windows display y = 0, width = 1920, height = 1200 }, [2] = { x = -1440, -- mark that secondary display is on left side of primary display y = 0, width = 1440, height = 900 }, ... for all displays } screen table also contain x, y members which mark top left corner of DCS window note about fullscreen : directx doesn't allow fullscreen applications with resolutions more than primary display can handle, so multimonitor presets in DCS will fall back to windowed mode if fullscreen initialization failed ( this info also will be printed to dcs.log) for reconfigure viewports setup for each unit type independently you can declare here function function reconfigure_for_unit(unit_type) --unit type is string with unit name if unit_type == "A-10C" then Viewports = ... define new Viewports table -- also you can define cockpit displays viewports here RIGHT_MFCD = ... define new RIGHT_MFCD viewport else Viewports = ... define default for others RIGHT_MFCD = nil -- remove for others end end --]] Link to comment Share on other sites More sharing options...
derammo Posted May 11, 2020 Author Share Posted May 11, 2020 (edited) Hi and thank you for your responses. I don't think I was clear enough in explaining my question so I created this write up to show exactly what I am talking about. I also linked this in Discord. I created this page to document what I am seeing and document the resolution (when we get one) for future Helios developers: https://github.com/BlueFinBima/Helios/wiki/Monitor-Setup-Logic You can see clearly that DCS (0,0) coordinate is not in fact a constant location and it is non trivial to predict where it will be. I don't know if case 3 is a bug. But at least this clearly documents that there is some algorithm trying to "intelligently" interpret the settings from the monitor setup, because it doesn't get any "Left" and "Top" offsets from options.lua, so it tries to do something smarter than just always take top-left or 0,0 windows coordinate. Edited May 11, 2020 by derammo Link to comment Share on other sites More sharing options...
SparrowHawk003 Posted February 9, 2022 Share Posted February 9, 2022 On 4/26/2020 at 7:53 PM, derammo said: PS: I can always get a deterministic result by just including the whole desktop or at least the left edge in the layout. That's not the question. There are folks who have a left screen they don't want to have DCS draw on, so they can use it for other stuff. Hi derammo, i am trying to achieve and understand very much what you are asking for and have had no luck. I also want to have other "stuff" displayed on part of my left screen. to make it more complicated, that screen is also my secondary monitor as my touch screen has to be my primary monitor in order for it to work. have you had any further luck? cheers! Link to comment Share on other sites More sharing options...
Recommended Posts