Ryan Gordon's Linux Game Porting Guidance

Written by Michael Larabel in Linux Gaming on 17 January 2014 at 12:28 AM EST. 21 Comments
LINUX GAMING
Well known Linux game developer and porter Ryan "Icculus" Gordon spoke at this week's first-ever Steam Dev Days about porting games from Windows to Linux. For those curious about what's involved in porting a modern game from Windows to Linux, he's shared his slides to cover the process.

Those wanting the slides to Ryan's Linux game porting presentation can find them via Icculus.org. Video recordings of the Steam Dev Days sessions are also said to become available in the weeks ahead but nothing was broadcast live. All the information seeping out so far is mostly through twitter. Anyhow, the highlights of Ryan Gordon's presentation include:

- Ryan's stated advantages in bringing your game to Linux is that the ecosystem isn't "flooded with cheap product, like Windows. You don’t have to compete to be heard over the mob." Additionally, there's no dictator controlling about what can be published nor taking a cut of sales -- like app stores for other platforms. Last and perhaps most importantly now, SteamOS is Linux based.

- About all the Linux distributions out there, SDL is capable of handling most of the differences.

- Regarding Linux graphics drivers, Ryan says, "Nvidia and AMD ship their own GPU drivers, and there are open source ones too. All of them are somewhere between pretty functional and world-class."

- About game engine support for Linux, Unity 3D offers good LInux support, Unreal Engine 3 was ported by outside developers, id Tech engines (up to id Tech 4) have native versions, Source Engine works on Linux, Leadworks is coming to Linux, and MonoGame-SDL2 can help XNA games.

- In regards to the process of porting games from Windows to Linux, Ryan Gordon recommends first moving to SDL2 (if not already) for the game as the library abstracts much of the platform differences, then move to OpenGL on Windows (if currently on Direct3D), and then after that starting the porting process.

- Ryan recommends GCC or LLVM Clang for compiling games.

For other Linux game porting recommendations, check out Ryan's always-great slides.
Related News
About The Author
Michael Larabel

Michael Larabel is the principal author of Phoronix.com and founded the site in 2004 with a focus on enriching the Linux hardware experience. Michael has written more than 20,000 articles covering the state of Linux hardware support, Linux performance, graphics drivers, and other topics. Michael is also the lead developer of the Phoronix Test Suite, Phoromatic, and OpenBenchmarking.org automated benchmarking software. He can be followed via Twitter, LinkedIn, or contacted via MichaelLarabel.com.

Popular News This Week