Friday, March 22, 2013

gentoo/xen awesomeness

...or the possibilities of linux as an gaming platform...

+Gentoo +Linux is incredible, really! :D

Recently i've made an blogpost about gaming via xen. I showed a picture playing 2 games at the same time. One game on Windows, one game on Linux over 3 screens.
Since there are not that much games which supports multimonitor on linux - at least not correctly, i've searched for other games and came across +0 A.D. which is an strategy game like Age of Empires.
While it's still in alpha state, it's already really good playable. However, most importantly it supports multi monitors really well.
Today i'm going to show a video about this setup...


So, what is showed in this video. The host system is - surprise, surprise -  Gentoo unstable 64bit with an xen enabled kernel-3.8. The Guest system is Windows 7. On Linux runs KDE 4.10.1 on VT7, awesome on VT8 (where i'll gonna start 0 A.D.) and on VT11 is running cmus - my favorite music player. That's actually nothing really new, really new is: Synergy!

Caution: Playing over 3 screens isn't bug-free at all! Especially when having different resolutions.
For example, the left and the right screen are cut at the bottom (see above). While that doesn't make much difference in playing 0 A.D., i couldn't actually start a game because the "Start game" button is in the bottom right. (but i could load a game) While this seems to be a hardware limitation (looks like i need two other 30" screens ;) ), two other games which i've tried (Amensia and Defcon) suffers form a bug where i can't move the mouse beyond not even the half of the screen (i can move it from the left side to about 30% of the middle screen). However this might be already fixed with recent mesa-9.1 since this works in 0 A.D. while +Steam games running with old emul mesa-9.0.1 libs.


On my first post about xen i'll got an comment from a user who ask me if i ever tried synergy on my setup to fix my input "problem". Until now my usual solution was an usb-switcher, where i could switch my input devices (keyboard & mouse) between my host and guest system. This actually worked - but never that good. The reason i'll never tried out synergy was because i was quite convenient with my actual solution and i always thought with synergy i have an much worse input lag - well, i was wrong.
Recently i've tested synergy and i was quite impressed. There is nearly no input lag and i think it fits perfectly well for causal gamers like me.
However, there are few settings to made, otherwise games wouldn't be playable with synergy.

How synergy works:

Synergy is a software which shares input's from one system (input server) on multiple other system's (input clients). The really good thing is, it's available on linux, windows and mac and it's even open source. First i've installed synergy on the system where the input (keyboard and mouse) is directly connected and set it up as the synergy server. All the other system's which should be accessible over synergy are client's. On my computer it would mean my host system (linux) would be the server while my guest system (windows) would be a client which tries to connect to the server directly after boot up.

Setting up synergy:

1.) Start the synergy server on the host and click on "Server Configuration". Set up an new client which should have access to the host. In my case i've put the client above the host, so that if i cross the top border of my host, my mouse appears in the guest system.

2.) Change the setting "Use relative mouse moves" in the "Advanced server settings" tab. This is important. While the mouse would work in windows without problems, in games you couldn't play anything. I don't know what exactly happens, but it looks like the mouse speed is incredible increased.

3.) I also made an keyboard shortcut which toggles switching between the systems. That's also important, because that keeps the mouse on the actual system (you don't want to switch accidently to linux while your gaming).

4.) Start the server.
5.) Install synergy on the client, add the server ip-address and click start. Synergy should immediately connect to the server. Now you should be able to use mouse & keyboard from the host system. Also check the option to start synergy directly after boot so that you don't have to start it every time..

The video:

For those who are interested, latest synergy is also in portage (even stable) and the windows version can be downloaded on their website. Below is now the video showing all the stuff whats possible :D

No comments:

Post a Comment