Development Engines
The appearance of new game engines with Linux support gives rise to hope that more games will start to appear in Linux versions. The free game engines are also getting better.
The appearance of new game engines with Linux support gives rise to hope that more games will start to appear in Linux versions. The free game engines are also getting better.
Commercially successful games usually score high with their perfect blend of breathtaking graphics, well-animated characters, realistic lighting, spectacular sound, and convincing effects. These features all can be developed from the bottom up; nowadays, game engines come into play in this process. Game engines can cater to 2D or 3D graphics, and some come complete with the necessary development modules.
The graphics engine takes care of textures, lighting effects, object animation, and so on. The physics engine ensures that the game objects conform to physical behavioral rules (rigid-body physics) – which also applies to liquids. The sound system ensures a full sound so the player feels a part of the action. Further modules can handle network coordination, provide a scripting interface, and control the opponent's level of intelligence. Although some engines provide all these things, others are more specialized.
If you search online at the MobyGames website [1], you'll find 139 different game engines, but very few support Linux. Linux was always a niche market, so porting and cross-platform programming was not a priority for most gaming companies. Moreover, development was primarily for Windows and DirectX graphics interfaces – Linux users gazed into the void. Although many games ran – and still do run – under Wine, support was poor, and performance compared with Windows was clearly limited.
In the 1990s and into the millennium, first-person shooter (FPS) games dominated the market with their appealing graphics. Their engines were mostly based on commercial application code that developers placed under an open source license – probably with the notion of developing a vibrant fan base for a game. Thus, id Software released the source code for its Quake engine, which a series of graphically well-designed Linux shooters adopted, including Wolfenstein: Enemy Territory, Nexuiz, Alien Arena, Warsow, and OpenArena, as well as UFO: Alien Invasion. Even the source code for the Doom 3 engine (officially id tech 4 ) is under a GPL license [2]. Independent of these offerings is the Sauerbraten game engine, which – despite its weird name – has spawned a few successful games, among them Cube 2 and Red Eclipse.
When considering these games, it's clear that they no longer meet the requirements of modern game engines. Not only should they integrate the aforementioned modules, but they should run on most platforms, which should minimize the effort of publishing games on PlayStation 3, the PC, or iPad. Games today run on mobile devices and in browsers, so modern engines need to be jacks-of-all-trades.
Whereas smaller companies license external engines for their games, larger studios often develop their own. The Rockstar Advanced Game Engine (RAGE) that drives Grand Theft Auto IV, for example, was apparently designed not to reveal information on the Rockstar games to the new owner of the RenderWare engine used up to now. RAGE is, unfortunately, another example of an engine lacking Linux support; other companies are more advanced.
Unity is not only the Ubuntu desktop, it is also a game engine with the same name [3]. Since version 4, the game has supported Linux, but officially only Ubuntu so far. Perhaps it's no coincidence that the namesakes now work together in the game space. A representative of the company was at the Ubuntu Developer Summit in Copenhagen October 2012.
Unity exactly matches the aforementioned profile of a modern engine. The graphics are terrific, and the games developed from it run on the big three PC platforms, the main consoles (Wii, XBox, PS3), mobile devices (iOS, Android), and – thanks to the Unity Web Player plugins – browsers.
Because the engine is relatively cost-efficient, it's particularly popular among game developers. The games developed with Unity aren't necessarily the big blockbusters – Linux users might be familiar with Rochard (Figure 1) – but they are numerous [4].
Another engine with a similar name that also delivers professional graphics and runs on Linux is Unigine [5]. Unlike Unity, its licensing costs are considerably higher, and only a few games are yet available [6]. Among the more well-known is Oil Rush (Figure 2), which can be purchased through Software Center. A number of other games are in development.
The step Valve took to extend the Steam game distribution platform to Linux has electrified the player community. Valve also wants to rewrite [7] many of its games under its own Source Engine – such as Half-Life, Counter-Strike, Portal 2, and Left 4 Dead – for the Linux platform. Valve is certainly not the largest game producer on earth, but it has already created some interesting titles and continues to develop its Source Engine.
The Epic Games company has been developing the Unreal Engine. Version 3 has been announced for Linux but as yet not appeared. Some popular games running on this engine are Unreal Tournament 3, Gears of War, Mirror's Edge, and Mass Effect [8]. Michael Larabel [9] has also claimed that CryEngine 3, which is the basis for Crysis 2 and 3, already has a Linux port, although he admits that no official project is connected with it. In the same breath, however, the Phoronix author mentions a Linux port for World of Warcraft by Blizzard Entertainment.
That still leaves the free engines, which can be used to produce some qualitatively fine games. Among them are Ogre 3D, which produces Goodfolks, and the Crystal Space Engine responsible for Yo Frankie!, PlaneShift, and some other free games. Panda was originally launched by Disney and is now being developed by a larger community. The engine is the basis for titles such as Pirates of the Caribbean Online, Ghost Pirates of Vooju Island, and Vampyre Story. A detailed list of free and open source engines can be found online [10].
Infos