Linux Containers Authors: Liz McMillan, Elizabeth White, Zakia Bouachraoui, Pat Romanski, Stefana Muller

Related Topics: Linux Containers

Linux Containers: Article

Gaming Roundtable Highlights

Getting games for Linux - cross-platform issues and more

For this month's Gaming Industry focus, editor Dee-Ann LeBlanc had a roundtable discussion with some of the leaders in this space. This article covers a recurring theme with the participants - cross-platform game programming and design. Read on for Dee-Ann's insight and comments from the gaming industry pros who shared their expertise in the discussion.

One issue heavily discussed among the crew of Linux gaming experts listed on page 10 is that of cross-platform game programming and design. I feel that cross-platform programming of all kinds is going to become more and more a requirement in this increasingly heterogeneous world, and that as more programmers learn techniques such as adding abstraction layers between the program function and the underlying operating-specific code, it will become easier and cheaper to implement - not to mention that better tools will likely become available.

However, I'm not a programmer, so it's easy for me to make such sweeping pronouncements. It seems that since we're in a computing age in which multiple viable platforms are gaining ground, ultimately keeping things tidy without having to completely reinvent a program for each OS makes sense.

So, having gotten my own heavy bias out of the way, let's look at a number of the issues brought up during the roundtable discussion that bear on this issue of getting games for Linux and cross-platform gaming in general.

Pros and Cons

According to Timothee "TTimo" Besset of id Software, the gaming company that has championed the cross-platform game approach for years, coding your games for multiple platforms, "make[s] your code more robust. Your source [has] to be cleaner, and you'll have to avoid ugly OS-specific hacks. Some bugs are easier to track down on one system or the other. Releasing your game on several platforms is a proof of technical expertise."

In addition, many may not be aware that new game companies often license the underlying engine from another (middleware) company so that they don't have to write the entire package from scratch. After all, according to Chris DiBona of Damage Studios, "Developing a good engine can take more than three years." That's a long time to go without any form of income, and it's the rare investor who is willing to wait that long for a brand-new company to complete just the underlying technology for a game. Keep in mind that the engine only gives you the "under the surface" stuff. You still have to write a game to ride on top of it!

Many young game companies license engines. Some of these are written only for DirectX. Others, from companies such as id Software, stick to OpenGL. According to Besset, "if you license id technology, you get all platforms (including consoles) in the same package. We use a single OpenGL rendering back end, so that's easy. Some engines use a D3D back end on Windows and a GL back end otherwise." These other engines might have been written primarily for DirectX or OpenGL, with support for the other wedged in after the fact when need suddenly arises, or in some cases were written to easily switch between DirectX and OpenGL from the start.

The problem here is that when you license a game engine from many game and middleware-only companies, you end up having to pay for individual licenses for each platform you want to release your game on - though this charge is not actually (usually) related to the multiple library issue. According to DiBona, "If your platform costs aren't covered by those users on those platforms, you're unlikely to pay that fee and thus support that platform. Accommodating cross-platform compatibility costs money....That doesn't mean that Linux doesn't get served, but it might mean that it is subsidized by sales on other platforms. For instance, we really want to support Linux because that's where we're from, but we don't fool ourselves and we know where the primary market is for our product."

After all, according to DiBona - after reading the id site - id Software's cost of $250,000 and 5% of income per platform for its engine, paying fees for many platforms "isn't an option for all but the most well-funded or established companies. The cost of getting every platform via id [in particular] ends up being more than buying the platforms you need from other engine manufacturers." Especially since, as he aptly points out, people are not going to buy the same game twice just so they can play it on different platforms - at least not to play it on multiple computer platforms.

More Reasons to Go Cross-Platform

Aside from wanting to offer games to people on many platforms, there are actual QA reasons to keep game programming a cross-platform endeavor. According to Ryan "Icculus" Gordon, the porting machine behind many of the mainstream games that people enjoy today under Linux, "there are good technical reasons for remaining portable, even if you never intend to ship on anything but Windows. You run Valgrind on Linux and Shark on Mac OS X. You find memory corruptions and leaks and bugs faster, your code is cleaner, and your developers are kept more honest. Better code and less development overhead (you heard that right) are a certainty...if this methodology was employed from day one.

"Anyone who has used this strategy, either for games or any other software, will attest to this in a heartbeat. Those who haven't used this strategy lack foresight, vision, or management. Sadly, most software, games or otherwise, falls into the latter category."

Fighting the FUD

There is also the issue of misinformation and confusion among existing game publishers about Linux. Gordon points out that the most common misconceptions that he hears are:
  • Linux is hard to use.
  • Linux has a million incompatible versions we can't support.
  • Linux users don't buy software.
  • Linux users are all pirates.
  • Linux users are immature pains in the butt.
He continues with: "To be honest, nine-tenths of the Linux FUD applies to Windows, and Windows-based gamers...put in the right terms, I don't think any gaming house would disagree. There's just a large enough financial incentive to put up with the Windows gamers' grief."

Then there is the problem mentioned in the "Mainstream Games on the Linux Desktop" roundtable discussion, which I'll paraphrase here. Many game publishers don't want to have to provide technical support for Linux users. As Gordon points out, most Linux users are so happy to have the game on their platform at all that simply saying, "We don't support this product" is a bit of a "Get Out of Support Free" card for now. Linux isn't the only platform with this problem, though. In a way, the FUD around games for the Mac is worse.

According to Gordon, "It's assumed that Mac gamers are willing to put down money, if you can find enough of them, but they are frequently considered to be barely literate. I find this to be fairly insulting; I've heard numbers that suggest the majority of Mac users have a college degree, higher IQ, etc., but people think that they can't follow a README that says 'download these files, drag these things here...'. On Linux, you can get away with that; people will jump through complex hoops and Google for any tidbit of information that gets them closer to playing the game. On the Mac, publishers assume that if it's not polished, packaged, and installed and running with two clicks of the mouse, the Mac gamer will curl up in a ball and weep at the sheer technical challenge of it."

Another Side of the Coin

Then there's TransGaming Technologies, the company that stepped forward to fill the existing gap between Linux users (who want to play games) and the publishers that so far haven't shown the desire to seriously cater to the Linux market. While there are arguments over whether TransGaming's WineX is healthy for the Linux gaming industry, some companies do actually hand over their source code to the company in order to let TransGaming make Linux-specific tweaks for better performance. This seems like a good starting point.

Gavriel State refers to the "hybrid" approach used for those games for which the source code is available. With this approach, "the executables are built on Windows using Microsoft Visual C++ (with its higher-quality code generation), and they run on Linux using the WineX loader technology, but they also have Linux-specific optimizations in them.

"For example, both games have minor changes to the way in which a backbuffer is finally drawn to the screen. This allows us to bypass some of the overhead that we would have to tolerate on a pure Windows title. That specific optimization is only really relevant for 2D games, but other optimizations are possible in 3D titles as well when we work with source code.

"TransGaming's versions of [The Sims and Kohan] also have various Linux-specific features in them. For example, The Sims on Linux replaces the use of a proprietary MP3 codec with Ogg Vorbis, and when doing an HTML export of an 'album' will produce better HTML than the Windows version does (on Windows, only IE can display the albums). Kohan on Linux also uses Ogg Vorbis audio, and the resulting size savings made it much easier to distribute the game online."

Also, in an amusing display of how to approach the issue of fighting game piracy, State continues: "TransGaming's Kohan on Linux also incorporates a Linux-specific copy protection mechanism. If the game appears to have been pirated, it will put up a message saying so, and ask the user to contact TransGaming. Then, the game will become subtly impossible to win, and every five minutes fire will rain from the sky onto your troops. This is accomplished in part through calls from the application to various bits of Linux-specific code."

TransGaming also handles porting games to OS X as well as Linux, and this actually adds some new challenges rather than being a straightforward issue of "you're porting to Linux so OS X should be easy." Some of these problems will also occur in those cases where people are running Linux on the PowerPC platform.

ATI, Are You Listening?

One common refrain in the roundtable discussion was, "NVIDIA's drivers for Linux are good, ATI's aren't." According to Icculus, "ATI's drivers suffer from 'it runs Quake 3 Arena' syndrome. Q3A has been, for years, the de facto standard for benchmarks and driver testing, but it's a radically different codepath from, say, UT2003 usage patterns.

"UT2003, and licensee games based on this engine, have been broken on ATI drivers (both DRI and closed-source solutions) for over a year. Everyone who writes me to complain inevitably notes, 'Quake 3 runs fine here. This is a bug in your game!' Obviously, I'm biased, though."

Besset adds, "We're pretty much in the same situation for id's next game. Doom III runs fine on Linux with NVIDIA hardware; I tried running on an ATI card a few months ago and there were several issues. It's likely Doom III will be NVIDIA-only on Linux, at least until drivers for ATI cards get better. Putting out games with higher OpenGL requirements is still a good way to give some incentive for better drivers. I remember the state of the Linux OpenGL drivers wasn't that good to run Quake 3 Arena when the game first came out."

State shines a slight ray of hope onto the proceedings, at least, with, "ATI support is certainly improving, but it isn't yet up to the same level as NVIDIA. We're working hard with developers at ATI to change that, and hope to see continued improvement throughout 2004. TransGaming's technology is allowing ATI to test their drivers against a broader suite of games, which should, in the end, result in more robust drivers...[in fact] TransGaming works with developers at both ATI and NVIDIA, reporting bugs, discussing issues, and ensuring that they test their drivers regularly with WineX."

On a Positive Note

When it comes to client/server games, Linux is quite heavily in the picture. Rumor has it that many MMORPGs (Massive Multiplayer Online Role-Playing Games) are running Linux on the back end. Serious gamers are also no doubt aware that many of the team-based, first-person shooters that allow groups to run their own servers tend to provide both Windows and Linux servers to choose from. In fact, according to Gordon, "Epic has a financial interest in keeping Unreal [Tournament and subsequent versions] portable to Linux, in both client and server. Our licensees request (in some cases, demand) it. I wouldn't be surprised to find that id has similar situations."

In the case of this second class of games, an entire industry has sprung up with companies renting out game servers to groups who for whatever reason can't or don't want to run their own. According to Gordon, "These server rental companies are frequently the ones reporting bugs and performance bottlenecks and aggressively aiding in their resolution. They do way more to help than people who sit on their hands until a Linux client materializes, and I wouldn't trade them for the world."

Where to Find Games

To end on a fun note, I asked the fellows who's actually putting out commercial games for Linux these days, aside from the big kids like id, Epic, TransGaming, and so on. If you want to see what else is happening on the commercial Linux and cross-platform game front - since most of these companies put out games that run on Windows, OS X, and Linux - check out Pompom (www.pompom.org.uk), Pyrogon (www.pyrogon.com), and GarageGames (www.garagegames.com), and keep your eye on Linux Game Publishing (www.linuxgamepublishing.com).

More Stories By Dee-Ann LeBlanc

Dee-Ann LeBlanc has been involved with Linux since 1994. She is the author of 12 books, 130 articles, and has more of both coming. She is a trainer, a course developer - including the official Red Hat online courseware at DigitalThink - a founding member of the AnswerSquad, and a consultant.

Comments (0)

Share your thoughts on this story.

Add your comment
You must be signed in to add a comment. Sign-in | Register

In accordance with our Comment Policy, we encourage comments that are on topic, relevant and to-the-point. We will remove comments that include profanity, personal attacks, racial slurs, threats of violence, or other inappropriate material that violates our Terms and Conditions, and will block users who make repeated violations. We ask all readers to expect diversity of opinion and to treat one another with dignity and respect.

IoT & Smart Cities Stories
Moroccanoil®, the global leader in oil-infused beauty, is thrilled to announce the NEW Moroccanoil Color Depositing Masks, a collection of dual-benefit hair masks that deposit pure pigments while providing the treatment benefits of a deep conditioning mask. The collection consists of seven curated shades for commitment-free, beautifully-colored hair that looks and feels healthy.
The textured-hair category is inarguably the hottest in the haircare space today. This has been driven by the proliferation of founder brands started by curly and coily consumers and savvy consumers who increasingly want products specifically for their texture type. This trend is underscored by the latest insights from NaturallyCurly's 2018 TextureTrends report, released today. According to the 2018 TextureTrends Report, more than 80 percent of women with curly and coily hair say they purcha...
The textured-hair category is inarguably the hottest in the haircare space today. This has been driven by the proliferation of founder brands started by curly and coily consumers and savvy consumers who increasingly want products specifically for their texture type. This trend is underscored by the latest insights from NaturallyCurly's 2018 TextureTrends report, released today. According to the 2018 TextureTrends Report, more than 80 percent of women with curly and coily hair say they purcha...
We all love the many benefits of natural plant oils, used as a deap treatment before shampooing, at home or at the beach, but is there an all-in-one solution for everyday intensive nutrition and modern styling?I am passionate about the benefits of natural extracts with tried-and-tested results, which I have used to develop my own brand (lemon for its acid ph, wheat germ for its fortifying action…). I wanted a product which combined caring and styling effects, and which could be used after shampo...
The platform combines the strengths of Singtel's extensive, intelligent network capabilities with Microsoft's cloud expertise to create a unique solution that sets new standards for IoT applications," said Mr Diomedes Kastanis, Head of IoT at Singtel. "Our solution provides speed, transparency and flexibility, paving the way for a more pervasive use of IoT to accelerate enterprises' digitalisation efforts. AI-powered intelligent connectivity over Microsoft Azure will be the fastest connected pat...
There are many examples of disruption in consumer space – Uber disrupting the cab industry, Airbnb disrupting the hospitality industry and so on; but have you wondered who is disrupting support and operations? AISERA helps make businesses and customers successful by offering consumer-like user experience for support and operations. We have built the world’s first AI-driven IT / HR / Cloud / Customer Support and Operations solution.
Codete accelerates their clients growth through technological expertise and experience. Codite team works with organizations to meet the challenges that digitalization presents. Their clients include digital start-ups as well as established enterprises in the IT industry. To stay competitive in a highly innovative IT industry, strong R&D departments and bold spin-off initiatives is a must. Codete Data Science and Software Architects teams help corporate clients to stay up to date with the mod...
At CloudEXPO Silicon Valley, June 24-26, 2019, Digital Transformation (DX) is a major focus with expanded DevOpsSUMMIT and FinTechEXPO programs within the DXWorldEXPO agenda. Successful transformation requires a laser focus on being data-driven and on using all the tools available that enable transformation if they plan to survive over the long term. A total of 88% of Fortune 500 companies from a generation ago are now out of business. Only 12% still survive. Similar percentages are found throug...
Druva is the global leader in Cloud Data Protection and Management, delivering the industry's first data management-as-a-service solution that aggregates data from endpoints, servers and cloud applications and leverages the public cloud to offer a single pane of glass to enable data protection, governance and intelligence-dramatically increasing the availability and visibility of business critical information, while reducing the risk, cost and complexity of managing and protecting it. Druva's...
BMC has unmatched experience in IT management, supporting 92 of the Forbes Global 100, and earning recognition as an ITSM Gartner Magic Quadrant Leader for five years running. Our solutions offer speed, agility, and efficiency to tackle business challenges in the areas of service management, automation, operations, and the mainframe.