Multiple Monitor Gaming On Linux

I remember when I first got Quake3 installed and running on Linux. Ancient though it already was, it represented a glimmer of hope that modern games might be possible for my favorite OS. I wondered if companies like Loki could really start a commercial game market for Linux that would take off. Turns out, no, they couldn’t. They went bankrupt over a decade ago. But they did help plant that seed of hope in the game-deprived hearts of naive Linux users like me.

As years passed the market for Linux games, commercial or Open Source, could best be described as bleak. Decent titles were sparse, compatibility an ongoing battle. I can recall a few shining moments during those dark years, but they always left you wanting more.

The tides are turning these days as more and more effort seems to be going into producing games for Linux. But what if you want to run a game across multiple monitors, because you know, that would be really cool? And what if you had 3 27″ Samsung displays each at a resolution of 1920×1080 connected to a system fast enough to accelerate the combined 5760×1080 resolution with sufficient frame rates to render virtually any recently released game? I don’t know what you would do in that “what if” scenario, but I would fiddle with it endlessly then write a blog post about it.
setup
First the fiddling. I’m using Nvidia video hardware so the proprietary driver is a must for performance. The poorly named “TwinView” option of the driver handles all three monitors so that the X server sees one big display. I have found enabling the X server’s own “xinerama” option to be more useful than the Nvidia driver’s Xrandr interface when it comes to making the entire screen usable for a game. Window managers can interfere with a games ability to utilize the whole display so it can be useful to fire up a second X server with a different configuration and WM just for gaming.

Aside from that getting things working really comes down to the game itself. It can be hit or miss as to whether or not a game can take advantage of the combined display, so even with everything set up properly it still might fail. In those cases hacking the game configuration files can be a useful last resort, if you can figure out where they are and what to change. Here are a few games I did manage to get working. Click the thumbnail image for the full size screenshot, but be warned, the file sizes are big :).

Salvation Prophecy

http://www.salvationprophecy.com/
sp3

One part first-person shooter, one part space combat, this is a fun game that starts off small and evolves into an epic galaxy-wide struggle against other factions and unknown alien races.

Metro Last Light

http://www.4a-games.com/metro-last-light.html
metro

This screenshot does not do Metro’s incredible graphics justice. It really is an impressively done post-apocalyptic first person shooter. I’m not too far into it yet, but the story is compelling and the challenges reasonably diverse, even if the premise is a bit played out.

Half Life 2

http://orange.half-life2.com/
hl2_final

An oldie but a goodie. I had never played Half Life prior to the recent Linux re-releases on Steam, but now that I have, I can understand the praise heaped upon it when it was cutting edge. It may not stack up to Metro Last Light in the graphics department but the game play is a blast, and having the wide-angle peripheral vision is a bonus when it comes to exploring.

Forced

http://forcedthegame.com/
forced

Forced is a top-down arena battle game with interesting co-operative play and pretty cool graphics. There are four types of characters to choose from, and a system for building up your fighter’s abilities as you progress from one challenge to the next. Battles feature equal parts hack-and-slash and puzzle solving.

Spectraball

http://shoreboundstudios.com/spectraball/
sb_final

This is the ultimate “roll a ball around” game out there with nice graphics and challenging obstacles. It is amazing how far we have come since the good old days of burning the skin off your palm working the trackball on Marble Madness.

Iesabel

http://iesabel.com/
ie_final

I have to admit this was a late entry to the list and I have only played this for a few minutes. So far it looks to be a pretty interesting action/fantasy RPG type of thing. I had to mess around with it to get the resolution right, but since then it seems to be running well.

Anomaly War-zone Earth

http://www.11bitstudios.com/games/7/anomaly-warzone-earth
awe_final

Anomaly turns the tables on the tower-defense genre — you are the evading force trying to destroy the enemy’s well placed tower defense systems. It’s a fun game and the extra screen real-estate comes in handy. Since the first release several add-ons and a sequel have become available.

Legends of Aethereus

http://www.aethereusgame.com/index.html
loa_final

This is a great looking first person adventure/RPG. The combat system is a bit clunky, and I have had some stability problems in the past, but the latest update seems to be an improvement over previous versions. I hope the development team stays at it because this has the potential to be a great game.

X3

http://www.egosoft.com/games/x3tc/info_en.php
x3_final

This is an open-ended space simulation game that looks really cool. It’s also another one I have not spent much time playing. I’m looking forward to a rainy day so I can dig into it more.

0AD

http://play0ad.com/
0ad_final

The best way to describe 0AD is to combine the game play of Glest with historical accuracy and better graphics. Though seemingly in a perpetual alpha state, 0AD is actively developed and should ultimately be an excellent simulation game.

Oil Rush

http://oilrush-game.com/
oilA polished and beautiful tower defense game. Oil Rush leverages the Unigine game engine to not only load up on the eye-candy, but also to provide detailed video setting options.

Brütal Legend

http://www.doublefine.com/brutallegend/
bl2This is a first person action title based on a mythology built on 1980’s metal bands. Jack Black voices the main character who is accidentally whisked away from his thankless job as a roadie to lead a rag-tag band of rockers against heavy metal demons suppressing the people’s ability to rock. The premise alone is worth the price, even if the game play gets a bit redundant.

There are plenty of fun games available for Linux that just don’t make sense stretched across multiple screens. For the ones that do make sense (and work) I have found that it enhances the depth of the gaming experience, which I will keep telling myself is enough to justify the cost of the hardware. Now I just need a modern racing title with multiple monitor support to be released so I can upgrade my video card!

15 thoughts on “Multiple Monitor Gaming On Linux

  1. I realize this is a bit old.. im hoping that you will get this. How on earth did you get Metro LL and Half-life 2 to run 3 wide? I cannot for the life of me get either of them to run on more than one screen. They either completely ignore my res settings in their cfg’s or will even change my cfg’s back to 1920×1080 when I run them.

    • I have a few xorg config file tweaks that I hope will help you. The recommended Xrandr interface has not really worked for me in this case, but Xinerama extensions do. In my “gaming” xorg.conf file I enable Xinerama in the “ServerLayout” section:

      Option “Xinerama” “1”

      and have an addition to the “Screen” section:

      Option “nvidiaXineramaInfoOverride” “5760×1080+0+0”

      If the display resolution in the game is not explicitly set, it selects the system default, which I think the above provides for games like Metro and Half Life 2 – both of which are a lot of fun across 3 screens 🙂

      I have also noticed some games will properly scale in windowed mode across 3 displays by just resizing the window. Performance takes a hit, but It’s worth a try if nothing else works.

      Hope that helps!

      • Holy crap that worked! Thank you! I feel kind of ashamed for not figuring that out… oh well it works! =)

      • HI, thanks for sharing all this info, do you know if there is a equivalent command for amd?

      • Hi, thanks for sharing all this info. Do you know if there is a equivalent of “nvidiaXineramaInfoOverride” for amd?

      • Hi,

        Could you share with us your complete xorg.conf config file ?
        I’m trying to have the same setup as you, but it doesn’t really work :-/

        Thank you a lot 🙂

      • Section "ServerLayout"
        Identifier "Layout0"
        Screen 0 "Screen0" 0 0
        InputDevice "Keyboard0" "CoreKeyboard"
        InputDevice "Mouse0" "CorePointer"
        Option "Xinerama" "0"
        EndSection

        Section "Files"
        EndSection

        Section "InputDevice"
        Identifier "Mouse0"
        Driver "mouse"
        Option "Protocol" "auto"
        Option "Device" "/dev/psaux"
        Option "Emulate3Buttons" "no"
        EndSection

        Section "InputDevice"
        Identifier "Keyboard0"
        Driver "kbd"
        EndSection

        Section "Monitor"
        Identifier "Monitor0"
        VendorName "Unknown"
        ModelName "Samsung SMS27A550H"
        HorizSync 30.0 - 81.0
        VertRefresh 56.0 - 75.0
        Option "DPMS"
        EndSection

        Section "Device"
        Identifier "Device0"
        Driver "nvidia"
        VendorName "NVIDIA Corporation"
        BoardName "GeForce GTX 680"
        BusID "PCI:1:0:0"
        EndSection

        Section "Screen"
        Identifier "Screen0"
        Device "Device0"
        Monitor "Monitor0"
        DefaultDepth 24
        Option "Stereo" "0"
        Option "metamodes" "DFP-1: 1920x1080 +3840+0, DFP-0: 1920x1080 +1920+0, DFP-3: 1920x1080 +0+0"
        Option "nvidiaXineramaInfoOverride" "5760x1080+0+0"
        SubSection "Display"
        Depth 24
        EndSubSection
        EndSection

  2. Pingback: More Multiple Monitor Gaming On Linux | Unencumbered by Facts

  3. Long shot, but I was looking at getting a GTX 980 to drive 4 displays for a development box. You mentioned you turned off the randr stuff, was that just for gaming, or did it have larger problems? (like if I was wanting to use it as a workstation rather than gaming box, would randr work nicely?)

    • It was just for gaming. I don’t see any noticeable difference with randr enabled or not for standard workstation stuff. One possible effect (along with xinerama enabled or not) could be default “maximize” behavior (1 screen or all screens?). I work around this by having maximize shortcuts defined in my window manager, so I can re-size a window to any single screen or all with a keystroke. I recently upgraded to a 980, it’s quite impressive! 🙂 I presume it can drive 4 displays easily, works great for 3.

  4. I have found a better(IMO) way to span games on multiple monitors. on KDE Plasma you can create custom rules for specific windows. what has worked for me is to set the resolution( in my case 4058, 1024), force windowed mode, force position on middle monitor, remove window titlebar and frame, force keep above behavior and block compositing. So far I have been able to run Chivalry: medieval warfare(this one didn’t even require any change on the config file) and rise of flight(on wine). I was even able to create scripts on arandr to configure and disable bezel compensation and create rules to run the them when then game is open or closed. It is awesome how powerful KDE is.

  5. Pingback: Difference between revisions of “Steam/Game-specific troubleshooting”

  6. Pingback: Even More Multiple Monitor Gaming On Linux – Unencumbered by Facts

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s