Forcing Triple Screen Gaming without Eyefinity or Surround on Windows

I wanted to play Racing-Games and others in a very weird tripple screen setup on windows. It is a "Portrait Lanscape Portrait"(PLP)-Setup. And to top it off, it is P1080p-60hz, L1440p-165hz-P1080p-60hz.

As you already expected, to set up Eyefinity or Surround is impossible these days with such a specific setup. AMD allowed such things in their old driver but not in the newer ones. And in general triple screen gaming is as janky and bad as it always was. Especially if you use your PC for anything else than one game and setup. So... I tried other solutions. Form third party software to modded drivers to finding the custom resolutions of the driver in the registry directly and modifying them with a hex-editor and even modified display capabilities-data with CRU, but nothing worked. The goal at the end is to expose a resolution to the game that makes it scale over all screens. On Nvidia, you can set Customs resolutions with "out of spec aspect ratios" but not on AMD. The driver seems to block it even when manually added from the registry. On Nvidia the Customs resolution can help forcing games into the needed resolution without the config editing in the next step.

I found a solution: First I needed to set the desired resolution in the game I wanted to play, in this case (4720x1440). Most games don't allow that (Assetto Corsa (Content Manager) is one of the few exceptions out there which allows just setting the resolution manually in the settings. It works perfectly btw.). But for most games you need to go into the Config-Files and put the resolution there. The game must be windowed too. Most of the time setting it in the config is enough, but sometimes (Forza Horizon 5 for example) you need to set it windowed every time or just press ALT+RETURN (ALT+ENTER) to switching it into some kind of window mode (getting games into some kind windowed-mode is always possible.

After the config stuff is set, only one thing is still missing. There is a program called SRWE (Simple Runtime Window Editor). It allows you to manipulate program windows (not modifying the game, just the rendering window object of windows). First off, you MUST create a profile! Setting the details when everything is already running dose not work! I noticed that loading the profile sets all the values at the same time. Setting them individually at runtime just does not work. Create a profile in it with the right settings. I want the left site of the window to be on the left site of the left screen (obviously), so I set X to -1080 (The current width resolution of my left screen). Then I set window-width to 4720 and the height to 1440, now I save the profile. Open the file and make sure that the Window line has HierID="1" as its first parameter. If this is not the case, add it! I start my game, make it windowd or borderless if necessary and then I go into SRWE and select the game, set the checkmark on the top most entry on the left and then I load the profile and I'm done. Sometimes games reset there window when ALT+TAB is pressed, then I just reload the profile and go back into the game. After days of testing I could not find any game it dose not work with (Games where it makes sense like first/third person games or racing games and stuff like this). It is janky and a little finicky but the best solution for now and it works relatively reliable (even in comparison to Eyefinity or Surround LOL).

Fixes I needed for Game's:


Even if this all seems just annoying, once it is set up it is just a matter of starting the game, loading the profile and playing. Eyefinity, Surround and ultra wide gaming in general is just janky and always has been. At least on Linux you can create a custom resolution as you want and force games into areas on screen so they render right.

Everything useful I found while researching is also in the Sources-Section.

The Tool: https://github.com/dtgDTGdtg/SRWE

Sources: