3x the fun…Triple Monitor Gaming!
Posted by ushimitsudoki on April 22, 2008
A while back I posted about Dual Monitor Gaming – it didn’t really work too well for the games I wanted to play, because basically you end up with the crosshair right in the worst spot possible – between the monitors.
However, I broke down today and added a second GeForce 8800GTS 512 card and a third iiyama ProLite B2403WS monitor to my rig. Sweet.
Setting Up
Hardware installation was painless – but the monitor was disabled initially. Once I booted into Ubuntu I ran nvidia-settings and it showed the second card, and I was able to enable the monitor.
I juggled them around a bit so that the main monitor was in the center, rather than the far left – and then there are three basic options you have here:
- Set up each monitor as a separate X screen
- Set up one huge screen using Xinerama
- Set up TwinView on the two monitors on the one card, and a separate screen on the third.
The third option seemed crazy to me so I didn’t even try it.
The first option works with Compiz – Compiz does NOT work with Xinerama as far as I can tell – and it was a little neat.
However, I went with Xinerama, for one big old 5760×1200 screen. It was my impression that this would be the thing that worked for gaming … admittedly, I did not try the separate X screen thing (yet).
Game On!
Of course, you have to manually edit the game configuration to get it to support such a resolution. For Enemy Territory: Quake wars, I settled on this:
//3 monitor setup:
set r_aspectRatio "-1"
set r_customAspectRatioV "10"
set r_customAspectRatioH "64"
set r_customWidth "5760"
set r_customHeight "1200"
set r_mode "-1"
The only quirk here was that it did NOT work initially – I could only get the game showing up on the center monitor. I searched all over the place trying to figure out why. Finally, as a kind soul in IRC was assuring me it SHOULD be working – I pressed ALT+ENTER – and the game stretch across two monitors! I pressed ALT+ENTER again, and it was on all 3 monitors, fullscreen!
Excepting that small quirk (which didn’t seem small until it was solved), this was a dead simple process!
Owari
And that’s it! I must admit it is quite a bit harder playing across 3 monitors. For one thing the HUD elements are positioned at the corners of the side monitors, so it’s no longer a glance to check where you are on the map, for example. You have to actually turn your head.
Also, it seems to me that the aiming is a bit more difficult, and the FOV needs to be adjusted as well. I haven’t hit on the right combination of settings yet – and some of the difficulty may simply be adjusting psychologically to the new setup – but it sure looks good!
Screenshots
Edited to add by request! The opening screen at 5760×1200:
And here is a comparison of the same area. First screen is one monitor @ 1920×1200 with a FOV of 105:
And here is the same view across all 3 monitors, 5760×1200, FOV is 80:
In the screenie, the right most monitor section looks dark, but this isn’t apparent in the game – I don’t know why the screen shot turned out this way (they all did this – I took a few). The first two monitors (left and center) are on one 8800GTS 512. The last monitor (right) is one its own separate 8800GTS 512.
By default, the screenshots are TGA: 8.8MB for one screen and 26.4MB for three screens. These are JPG at 100%, so still big files.
Toggling monitors
Here is a bit of config for ETQW I am using so I can switch among 1/2/3 monitors. CTRL+BACKSPACE sets the cvars, and then I press ALT+ENTER to re-size the screen:
// Monitor Config
set mon1 "set g_fov 105; set r_aspectRatio 2; set r_customWidth 1920; set r_customHeight 1200; addchatline 'Single Monitor Config'; bind BACKSPACE $mon2 CTRL"
set mon2 "set g_fov 90; set r_aspectRatio -1; set r_customWidth 3840; set r_customHeight 1200; set r_customAspectRatioV 10; set r_customAspectRatioH 32; set r_mode -1; addchatline 'Dual Monitor Config'; bind BACKSPACE $mon3 CTRL"
set mon3 "set g_fov 80; set r_aspectRatio -1; set r_customWidth 5760; set r_customHeight 1200; set r_customAspectRatioV 10; set r_customAspectRatioH 64; set r_mode -1; addchatline 'Triple Monitor Config'; bind BACKSPACE $mon1 CTRL"
bind BACKSPACE $mon2 CTRL
I’m still messing about, trying various configuration options for my normal desktop – although dual monitors seemed to be pretty well supported and easy to get going, there seem to be a few minor quirks with triple monitors.
2008.04.24 Edited to Add:
BTW, although ET:QW is based on the Doom3 engine – I am not able to get Doom3 running right under Xinerama. Although I can get Doom3 to draw across all 3 monitors, there is no mouse cursor, and it is not fullscreen – ALT+ENTER does not function.
Also, when trying to run it on a single monitor (when Xinerama is enabled), the mouse cursor acts strange, can’t move it left or up, and it jumps quickly to the bottom or right and disappears. Best information I could find gives the same errors I see (Fatal X Error: Major opcode of failed request: 136) and general mentioning that Xinerama and Doom3 don’t play nice together.
2008.07.15 – Edited to Add:
I finally got W:ET and Doom3 working right with 3 monitors. Screenshots and details in this blog entry


Boycott Novell » Links 22/04/2008: Debian Weekly News Reborn; Lets of Open Source News said
[...] 3x the fun…Triple Monitor Gaming! [...]
max stirner said
screenshots please!
ushimitsudoki said
Max,
Ask and ye shall receive! I put up a few screenshots – check ‘em out!
irishdunn said
I would like to know about how you setup xinerama.
I really want to get the center monitor to be ‘primary’ but it seems to share with the right monitor (both are on the same card)
I dont know if you achieved this.
ushimitsudoki said
irishdunn,
What do you mean by ‘primary’ and ’seems to share’?
You can use metamodes (with the NVIDIA proprietary driver) to present alternate resolutions and monitors. This means you can “turn off” a monitor for gaming, so only one is on.
However, when combined with Xinerama, it goofs things up (this is a well-known bug that no one will take responsibility for) and the “dual monitors on one card” are treated as one big monitor – and you get things like windows maximizing across both monitors and so forth.
No matter which route you go with, there are going to be some annoying limitations – it’s a matter of finding out which annoying limitations you can live with!