If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

Lessons For Developers In Porting Games To Linux

Phoronix: Lessons For Developers In Porting Games To Linux

A programmer from The Farm 51, the game studio responsible for Painkiller: Hell and Damnation and other games, has shared their experiences in porting games to Linux. It's a technical presentation of interest to both game developers and Linux enthusiasts...

"When in doubt - use Ubuntu". It would be better to take Debian as a base, rather than Ubuntu. Betting on Ubuntu can become a problem long term considering current developments with Mir and co.

"When in doubt - do whatever Valve does". Not really, since Valve focuses on their DRMed approach, and uses their Steam runtime for that. Those who aim for DRM free method won't find this the good option. So for DRM free games the best approach is bundling libs. And in general, promoting dependency on Steam runtime sounds bad, since it means developers won't make an effort to release their games without Steam and DRM free. So if you are a developer - no Steam please, or if you want to distribute with Steam - give an option to buy and play the game without it.

Considering the use of SDL is adviced (which in turn abstracts the display server), Mir becomes irrelevant.
And about the DRM, AFAIK you need to explicitly introduce them to your game, if not shipping with Steam. And if shipping with Steam, there's no need to "look at Valve", since you are already making it compliant, so it obviously refers to the case where your game ships alone.

mrugiero: What I mean is that I don't want any games with DRM. And even if developers aren't interested in DRM, but using Steam out of convenience, they are not allowing DRM free option, if they rely on a hard dependency on Steam runtime. So I'd say - no dependency on Steam runtime please. And promoting it is bad. Unless this runtime can be fully open source and distributed outside Steam and DRM free.

mrugiero: What I mean is that I don't want any games with DRM. And even if developers aren't interested in DRM, but using Steam out of convenience, they are not allowing DRM free option, if they rely on a hard dependency on Steam runtime. So I'd say - no dependency on Steam runtime please. And promoting it is bad. Unless this runtime can be fully open source and distributed outside Steam and DRM free.

I didn't really look in depth, but I didn't see anything in the repo that is closed source, but just frozen binaries of open (and pretty common) projects, for example GNU-binutils and SDL. I think this runtime is just the runtime Steam uses, not Steam's proprietary API. If so, then you can have a DRM free game targeting them, just without having to open source your game (which IMO is up to the dev to decide, not us) and without having to either recompile for every distro/version or add extra bloat when other games need the same version of the libraries.

EDIT: Also, what is recommended in the slides (I don't know the videos, I prefer the written version) isn't using Steam, but just the same version of the libraries, that's why there is a sample script to check if it's already installed and to install those libraries if it isn't.

If this runtime is fully open source, has no DRM and can be installed without being Steam user - then I'm OK with developers using it (regardless if their games are open source or closed source ones), since it means they don't push DRM on their users. But in general I think it's better not to single out Steam is a preferred runtime. Simply because Steam isn't reliable in DRM free aspect so far.

First of all the title is quite misleading - this presentation ain't a lesson, its just tech talk for other devs from the game industry. It ain't walk in the park so knowing polish won't be enough

Secondly Leszek won't tell how to port unreal engine powered games to linux because he is bound by Epic's NDA. So the talk is quite about everything out there that showing off won't violate the NDA.

About Ubuntu - I assure all of you - Leszek ain't the ubuntu guy, he's more of a debian power user, but there's quite a lot of stuff thats still not stable enough for debian that can be done faster or works out of box on Ubuntu. And getting it to work on other distros isn't worth the time spent on it at the moment. Its a race about getting linux attention through steam and ubuntu ASAP, not full compatibility for every geek out there. And thats what the talk is about.