Video games |
---|
This article may contain excessive or inappropriate references to self-published sources .(May 2023) |
Linux-based operating systems can be used for playing video games. Because few games natively support the Linux kernel, various software has been made to run Windows games, software, and programs, such as Wine, Cedega, DXVK, and Proton, and managers such as Lutris and PlayOnLinux. The Linux gaming community has a presence on the internet with users who attempt to run games that are not officially supported on Linux.
Linux gaming started largely as an extension of the already present Unix gaming scene, [1] which dates back to that system's conception in 1969 with the game Space Travel [2] [3] [ self-published source? ] and the first edition in 1971, [4] with both systems sharing many similar titles. [5] [ self-published source? ] These games were mostly either arcade and parlour type games or text adventures using libraries like curses. [6] [7] A notable example of this are the "BSD Games", a collection of interactive fiction and other text-mode amusements. [8] [9] The free software philosophy and open-source methodology which drove the development of the operating system in general also spawned the creation of various early free games. [10] [11]
Popular early titles included Netrek and the various XAsteroids , XBattle, XBill , XBoing , X-Bomber , XConq , XDigger , XEmeraldia , XEvil, XGalaga , XGammon , XLander , XLife , XMahjong , XMine , XSoldier, XPilot , XRobots , XRubiks , XShogi , XScavenger , XTris , XTron , XTic and XTux games using the X Window System. [12] [13] Other games targeted or also supported the SVGAlib library allowing them to run without a windowing system, [14] such as LinCity , Maelstrom , Sasteroids, [15] and SABRE. [16] The General Graphics Interface was also utilized [17] for games like U.R.B.A.N The Cyborg Project [18] and Dave Gnukem [19] ported from MS-DOS. As the operating system itself grew and expanded, the amount of free and open-source games also increased in scale and complexity, with both clones of historically popular releases beginning with BZFlag , LinCity, and FreeCiv , [20] as well as original creations such as Rocks'n'Diamonds , Cube , The Battle for Wesnoth , and Tux Racer . [21]
The beginning of Linux as a gaming platform for commercial video games is widely credited to have begun in 1994 when Dave D. Taylor ported the game Doom to Linux, as well as many other systems, during his spare time. [22] [23] Shareware copies of the game were included on various Linux discs, [24] including those packed in with reference books. [25] [26] [27]
Ancient Domains of Mystery was also released for Linux in 1994 by Thomas Biskup, building on the roguelike legacy of games such as Moria and its descendent Angband , but more specifically Hack and NetHack .
From there Taylor would also help found the development studio Crack dot Com, which released the video game Abuse , [28] with the game's Linux port even being distributed by Linux vendors Red Hat [29] and Caldera. [30] The studio's never finished Golgotha was also slated to be released by Red Hat in box. [31]
In 1991 DUX Software contracted Don Hopkins to port SimCity to Unix, [32] which he ported to Linux in 1995 and eventually released as open source for the OLPC XO Laptop. [33]
A website called The Linux Game Tome, also known as HappyPenguin after its URL, was begun by Tessa Lau in 1995 to catalogue games created for or ported to Linux from the SunSITE game directories as well as other classic X11 games for a collection of just over 100 titles. [34]
id Software, the original developers of Doom, also continued to release their products for Linux. Their game Quake was ported to Linux via X11 in 1996, once again by Dave D. Taylor working in his free time. [35] [36] An SVGALib version was also later produced by Greg Alexander in 1997 using recently leaked source code, but was later mainlined by id. [37] Later id products continued to be ported by Zoid Kirsch [38] and Timothee Besset, [39] a practice that continued until the studio's acquisition by ZeniMax Media in 2009. [40] Initially, Zoid Kirsch was responsible for maintaining the Linux version of Quake and porting QuakeWorld to Linux.
Inner Worlds was released for and developed on Linux. [41] The UNIX Book of Games, a 1996 publication by Janice Winsor, described various games with an accompanying CD-ROM containing executables and source code for Linux and SCO Unix. [42]
The Linux Game Tome was taken over by Bob Zimbinski in 1998 eventually growing to over 2000 entries, sponsored by retailer Penguin Computing and later LGP until it went down in 2013, although mirrors still exist. [43] [44]
The site LinuxGames covered news and commentary from November 1998 until its host Atomicgamer went down in 2015. [45] [46] It was established by Marvin Malkowski, head of the Telefragged gaming network, alongside Al Koskelin and Dustin Reyes; [47] Reyes passed away August 8, 2023. [48]
Zoid Kirsch from id Software ported Quake II to Linux. Two programmers from Origin ported Ultima Online to Linux and MP Entertainment released an adventure game Hopkins FBI for Linux [49] [50]
On November 9, 1998, a new software firm called Loki Software was founded by Scott Draeker, a former lawyer who became interested in porting games to Linux after being introduced to the system through his work as a software licensing attorney. [51] Loki, although a commercial failure, is credited with the birth of the modern Linux game industry. [52] Loki developed several free software tools, such as the Loki installer (also known as Loki Setup), [53] and supported the development of the Simple DirectMedia Layer, [54] as well as starting the OpenAL audio library project. [55] [56] These are still often credited as being the cornerstones of Linux game development. [57] They were also responsible for bringing nineteen high-profile games to the platform before its closure in 2002.
Loki published Civilization: Call to Power , Eric's Ultimate Solitaire , Heretic II, Heroes of Might and Magic III, Railroad Tycoon II: Gold Edition, Quake III: Arena, and Unreal Tournament for Linux. [58]
Loki's initial success also attracted other firms to invest in the Linux gaming market, such as Tribsoft, Hyperion Entertainment, Macmillan Digital Publishing USA, Titan Computer, Xatrix Entertainment, Philos Laboratories, and Vicarious Visions. [59]
The ports of Quake and Quake II were released physically by Macmillan Computer Publishing USA, [60] while Quake III was released for Linux by Loki Software. [61] Red Hat had previously passed on publishing Quake for Linux, since it was not open-source at the time. [62]
Philos Laboratories released a Linux version of Theocracy on the retail disk. Ryan "Ridah" Feltrin from Xatrix Entertainment released a Linux version of Kingpin: Life of Crime .
BlackHoleSun Software released Krilo and Futureware 2001 released a trading simulation Würstelstand for Linux. [63]
The Indrema Entertainment System (also known as the L600) was also in development since 1999 as a Linux based game console and digital media player, [64] [65] [66] but production halted in 2001 due to a lack of investment, [67] [68] although the TuxBox project attempted a continuation. [69]
Loki published Descent 3, Heavy Gear II, SimCity 3000, and Soldier of Fortune for Linux. They also released the expansion Descent 3: Mercenary as the downloadable Linux installer. [58]
Hyperion Entertainment ported Sin to Linux published by Titan Computer. Vicarious Visions ported the space-flight game Terminus to Linux. Mountain King Studios released a port of Raptor: Call of the Shadows and CipSoft published the Linux client of Tibia. [70]
Boutell.com ported Exile III: Ruined World to Linux, which was a game created by Spiderweb Software.
During this time Michael Simms founded Tux Games, one of the first online Linux game retailers, [71] later followed by Fun 4 Tux, [72] Wupra, [73] ixsoft, and LinuxPusher. [74]
The period also saw a number of commercial compilations released, [75] such as 100 Great Linux Games by Global Star Software, [76] Linux Games by Walnut Creek CDROM, [77] [78] Linux Games++ by Pacific Hitech, [79] [80] Linux Cubed Series 8 LINUX Games by Omeron Systems, [81] Best Linux Games by SOT Finnish Software Engineering, [82] [83] [84] LinuxCenter Games Collection, [85] Linux Games & Entertainment for X Windows by Hemming, [86] [87] Linux Spiele & Games by more software, [88] Linux Spiele by Franzis Verlag, [89] and play it! Linux: Die Spielesammlung by S.A.D. Software. [90] Numerous Linux distributions and collections packed in Loki games and demos, [91] including Red Hat Linux, [92] Corel Linux and WordPerfect Office, [93] [94] and the complete Eric's Ultimate Solitaire bundled with PowerPlant by TheKompany. [95]
Loki published Heavy Metal: F.A.K.K.², Kohan: Immortal Sovereigns, MindRover: The Europa Project, Myth II: Soulblighter, Postal Plus, Rune, Rune: Halls of Valhalla, Sid Meier's Alpha Centauri, and Tribes 2 for Linux. [58]
Linux Game Publishing was founded in 2001 in response to the impending demise of Loki. Creature Labs ported Creatures: Internet Edition to Linux, which was published by LGP.
Hyperion Entertainment ported Shogo: Mobile Armor Division to Linux, and Tribsoft created a Linux version of Jagged Alliance 2, both published by Titan Computer.
Illwinter Game Design released Conquest of Elysium II and Dominions: Priests, Prophets & Pretenders for Linux. Introversion Software released Uplink for Linux.
BlackHoleSun Software released Bunnies, and worked on Atlantis: The Underwater City - Interactive Storybook published by Sterling Entertainment. [96]
GLAMUS GmbH released a Linux version of their game Mobility and Oliver Hamann released the driving game Odyssey by Car. [97]
Small Rockets published Small Rockets BackGammon, Small Rockets Mah Jongg, and Small Rockets Poker for Linux.[ citation needed ]
The company TransGaming marketed as a monthly subscription its own proprietary fork of Wine called WineX in October 2001, later renamed Cedega in 2004 and discontinued in 2011, which aimed for greater compatibility with Microsoft Windows games. A special Gaming Edition of Mandrake Linux 8.1 was released that featured WineX packed in with The Sims . [98] The fact that the fork of Wine did not release source back to the main project was also a point of contention, despite promises to release code after achieving a set number of subscribers. [99] [100]
The release of ScummVM in 2001, [101] Dosbox in 2002, [102] as well as video game console emulators like MAME from 1997 and released as open source in 2016, helped make Linux a viable platform for retro gaming (facilitated by the RetroArch frontend since 2010). [103] [104] This is especially the case for the GP2X series of handheld game consoles by GamePark Holdings in addition to the community driven Pandora and DragonBox Pyra. Dedicated emulation setups are also built on single-board computers like the Raspberry Pi released in 2012, which are most often Linux based including with Raspberry Pi OS. [105] Wine is also useful for running older Windows games, [106] including 16-bit and even some 32-bit applications that no longer work on modern 64-bit Windows. [107] The Sharp Zaurus personal data assistants adopted a Linux derived system called OpenZaurus, which attracted its own gaming scene. [108] [109] This was also the case with the Agenda VR3, advertised as the first "pure Linux PDA". [110] [111]
After Loki's closure, the Linux game market experienced some changes. [112] Although some new firms, such as Linux Game Publishing and RuneSoft, would largely continue the role of a standard porting house, [113] the focus began to change with Linux game proponents encouraging game developers to port their game products themselves or through individual contractors. [114] Influential to this was Ryan C. Gordon, a former Loki employee who would over the next decade port several game titles to multiple platforms, including Linux. [115]
Ryan ported America's Army, Candy Cruncher, Serious Sam: The First Encounter, and Unreal Tournament 2003 to Linux. [116] [117] [118]
Linux Game Publishing had initially tried to pick up the support rights to many of Loki's titles, but in the end it was only able to acquire the rights to MindRover: The Europa Project. They released the updated version of Mindrover and its downloadable update for owners of the old Loki version. [119]
Return to Castle Wolfenstein was released for Linux and with the Linux port done in-house by Timothee Besset [120]
Chronic logic released Bridge Construction Set and Triptych for Linux.
Sunspire Studios released in retail commercial expansion of the game titled Tux Racer . [121]
Ryan ported Devastation, Medal of Honor Allied Assault, and Serious Sam: The Second Encounter to Linux. [122]
LGP took interest in publishing Pyrogon games on physical CDs and they released Candy Cruncher. [123] Mathieu Pinard from Tribsoft got LGP in contact with Cyberlore to save the Linux port of Majesty because Titan Computer get out of Linux publishing. This turn of events helped LGP to release a Majesty for Linux after Pinard closed his company in 2002. [124]
Timothee Bessett from id Software ported Wolfenstein: Enemy Territory to Linux. [125]
Around this time many companies, starting with id Software, also began to release legacy source code leading to a proliferation of source ports of older games to Linux and other systems. [126] This also helped expand the already existing free and open-source gaming scene, especially with regards to the creation of free first person shooters. [127] In addition, numerous game engine recreations have been produced to varying levels of accuracy using reverse engineering or underlying engine code supporting the original game files including on Linux and other niche systems. [128] [129]
Ryan ported Unreal Tournament 2004 to Linux for Epic Games [130] and Timothee Bessett from id Software ported Doom 3 to Linux. [131]
David Hedbor, founder and main programmer of Eon Games ported NingPo MahJong and Hyperspace Delivery Boy! to Linux, which later were published by LGP. [132]
Ryan ported Postal²: Share The Pain to Linux published by LGP. [133]
CodeWeavers offered an enhanced version of Wine called CrossOver Games. [134] [135] The reliance on such compatibility layers remains controversial with concerns that it hinders growth in native development, [136] [137] although this approach was defended based on Loki's demise. [138] [139] PlayOnLinux, established in 2007, provides a community alternative, [140] with various guides being written on how to get games to run through Wine. [141]
The Linux gaming market also started to experience some growth towards the end of the decade with the rise of independent video game development, [143] with many "indie" developers favouring support for multiple platforms. [144] The Humble Indie Bundle initiatives inaugurated in 2010 helped to formally demonstrate this trend, [145] with Linux users representing a sizable population of their purchase base, as well as consistently being the most financially generous in terms of actual money spent. [146] [147] The Humble Indie Bundle V in 2012 faced controversy for featuring a Wine-based release of Limbo prepared by CodeWeavers, [148] while a native version was later released in 2014. [149] Humble eventually began offering Windows-only games in their bundles and on their store. [150] [151]
In 2009, the small indie game company Entourev LLC published Voltley to Linux which is the first commercial exclusive game for this operating system. [152] [153] In the same year, LGP released Shadowgrounds which was the first commercial game for Linux using the Nvidia PhysX middleware. [154] The GamingOnLinux website was launched on July 4, 2009, and eventually succeeded LinuxGames as the main source of news and commentary. [155]
The release of a Linux version of Desura in 2011, [156] a digital distribution platform with a primary focus on small independent developers, was heralded by several commentators as an important step to greater acknowledgement of Linux as a gaming platform. [143] [157] [158] Shortly before this, Canonical launched the Ubuntu Software Center which also sold digital games. [159] The digital store Gameolith also launched in 2011 focused principally on Linux before expanding in 2012 and closing in 2014. [160] [161]
In July 2012, game developer and content distributor Valve announced a port of their Source engine for Linux as well as stating their intention to release their Steam digital distribution service for Linux. [162] [163] [164] The potential availability of a Linux Steam client had already attracted other developers to consider porting their titles to Linux, [158] [165] [166] [167] including previously Mac OS only porting houses such as Aspyr Media and Feral Interactive. [168]
In November 2012, Unity Technologies ported their Unity engine and game creation system to Linux starting with version 4. All of the games created with the Unity engine can now be ported to Linux easily. [169]
In September 2013 Valve announced that they were releasing a gaming oriented Linux based operating system called SteamOS with Valve saying they had "come to the conclusion that the environment best suited to delivering value to customers is an operating system built around Steam itself." [158] [170] This was used for their Steam Machine platform released on November 10, 2015, and discontinued in 2018. [171]
In March 2014 GOG.com announced they would begin to support Linux titles on their DRM free store starting the same year, after previously stating they would not be able due to too many distributions. [172] GOG.com began their initial roll out on July 24, 2014, by offering 50 Linux supporting titles, including several new to the platform. [173]
Despite previous statements, GOG have confirmed they have no plans to port their Galaxy client to Linux. [174] The free software Lutris started in 2010, [175] GameHub from 2019, [176] MiniGalaxy from 2020, [177] and the Heroic Games Launcher from 2021, [178] offer support for GOG as well as the Epic Games Store, Ubisoft Connect and Origin.
In March and April 2014 two major developers Epic Games and Crytek announced Linux support for their next generation engines Unreal Engine 4 and CryEngine respectively. [179] [180]
Towards the end of 2014 the game host itch.io announced that Linux would be supported with their developing open source game client. [181] This was fully launched simultaneously on Windows, Mac OS X and Linux on December 15, 2015. [182] The service had supported Linux since it was first unveiled on March 3, 2013, with creator Leaf Corcoran personally a Linux user. [183] The similar Game Jolt service also supports Linux and has an open source client released on January 13, 2016. [184] [185] GamersGate also sells games for Linux. [186] [187]
On August 22, 2018, Valve released their fork of Wine called Proton, aimed at gaming. [188] It features some improvements over the vanilla Wine such as Vulkan-based DirectX 11 implementation, Steam integration, better full screen and game controller support and improved performance for multi-threaded games. [189] It has since grown to include support for DirectX 9 [190] and DirectX 12 [191] over Vulkan. The itch.io app added its own Wine integration in June 2020, [192] while Lutris and PlayOnLinux are long-standing independent solutions for compatibility wrappers. [193] [194]
As with Wine and Cedega in the past, concerns have been raised over whether Proton hinders native development more than it encourages use of the platform. [195] [196] Prodeus dropped native support in favour of Proton shortly before final release [197] and Arcen Games cancelled planned native support for Heart of the Machine . [198] Valve has expressed no preference over Proton or native ports among developers. [199]
On February 25, 2022, Valve released Steam Deck, a handheld game console running SteamOS 3.0. [200] [201] The deployment of Proton and other design decisions were based on the limited response to their previous Steam Machines. [202] Linux was also used as a base for several nostalgia consoles, including the Neo Geo X, [203] NES Classic Edition, [204] Super NES Classic Edition, [205] Sega Genesis Mini, [206] Intellivision Amico, [207] Lichee Pocket 4A, [208] and the Atari VCS. [209] It also powers the more general Polymega, [210] Anbernic RG351 and 5G552, as well as the Game Gadget, [211] Evercade, VS, EXP and Super Pocket retrogaming consoles by Blaze Entertainment. [212] [213]
As of early 2023, the retro game store Zoom Platform was enhancing Linux support on their available titles. [214]
Some companies ported games to Linux running on instruction sets other than x86, such as Alpha, PowerPC, Sparc, MIPS or ARM.
Loki Entertainment Software ported Civilization: Call to Power , Eric's Ultimate Solitaire , Heroes of Might and Magic III , Myth II: Soulblighter , Railroad Tycoon II Gold Edition and Sid Meier's Alpha Centauri with Alien Crossfire expansion pack to Linux PowerPC. [215] They also ported Civilization: Call to Power, Eric's Ultimate Solitaire, Sid Meier's Alpha Centauri with Alien Crossfire expansion pack to Linux Alpha and Civilization: Call to Power,Eric's Ultimate Solitaire to Linux SPARC. [216]
Linux Game Publishing published Candy Cruncher , Majesty Gold , NingPo MahJong and Soul Ride to Linux PowerPC. They also ported Candy Cruncher, Soul Ride to Linux SPARC and Soul Ride to Linux Alpha. [217] [218]
Illwinter Game Design ported Dominions: Priests, Prophets and Pretenders , Dominions II: The Ascension Wars and Dominions 3 to Linux PowerPC, as well as Conquest of Elysium 3 , Dominions 4: Thrones of Ascension to Raspberry Pi. [219]
Hyperion Entertainment ported Sin to Linux PowerPC published by Titan Computer [220] and Gorky 17 to Linux PowerPC which later was published by LGP. [221]
Runesoft hired Gunnar von Boehn which ported Robin Hood – The Legend of Sherwood to Linux PowerPC. [222] Later Runesoft ported Airline Tycoon Deluxe to Raspberry Pi was running Debian GNU/Linux.[ citation needed ]
Iain McLeod ported Spheres of Chaos to Linux on the PlayStation 2 consoles and later re-released it as a freeware game.
The Steam Hardware Survey reports that as of January 2024, 2% of users are using some form of Linux as their platform's primary operating system. [223] The Unity game engine used to [224] make their statistics available and in March 2016 reported that Linux users accounted for 0.4% of players. [225] In 2010, in the first Humble Bundle sales, Linux accounted for 18% of purchases. [226]
Linux as a gaming platform can also refer to operating systems based on the Linux kernel and specifically designed for the sole purpose of gaming. Examples are SteamOS, which is an operating system for Steam Machines, Steam Deck and general computers, video game consoles built from components found in the classical home computer, (embedded) operating systems like Tizen and Pandora, and handheld game consoles like GP2X, and Neo Geo X. The Nvidia Shield runs Android as an operating system, which is based on a modified Linux kernel.[ citation needed ]
The open source design of the Linux software platform allows the operating system to be compatible with various computer instruction sets and many peripherals, such as game controllers and head-mounted displays. As an example, HTC Vive, which is a virtual reality head-mounted display, supports the Linux gaming platform.[ citation needed ]
In 2013, tests by Phoronix showed real-world performance of games on Linux with proprietary Nvidia and AMD drivers were mostly comparable to results on Windows 8.1. [227] Phoronix found similar results in 2015, [228] though Ars Technica described a 20% performance drop with Linux drivers. [229]
An operating system based on the Linux kernel and customized specifically for gaming, could adopt the vanilla Linux kernel with only little changes, or—like the Android operating system—be based on a relative extensively modified Linux kernel. It could adopt GNU C Library or Bionic or something like it. The entire middleware or parts of it, could very well be closed-source and proprietary software; the same is true for the video games. There are free and open-source video games available for the Linux operating system, as well as proprietary ones.[ citation needed ]
The subsystems already mainlined and available in the Linux kernel are most probably performant enough so to not impede the gaming experience in any way,[ citation needed ] however additional software is available, such as e.g. the Brain Fuck Scheduler (a process scheduler) or the Budget Fair Queueing (BFQ) scheduler (an I/O scheduler). [230]
Similar to the way the Linux kernel can be, for example, adapted to run better on supercomputers, there are adaptations targeted at improving the performance of games. A project concerning itself with this issue is called Liquorix. [231] [232]
Several game creation systems can be run on Linux, such as Game Editor, GDevelop, Construct and Stencyl, as well as beta versions of GameMaker. [233] A Linux version of Clickteam Fusion 3 was mentioned, but has yet to be released. [234] The Godot, Defold, and Solar2D game engines also supports creating games on Linux, [235] as do the commercial UnrealEd [236] and Unity Editor, [237] [238] The visual programming environments Snap!, Scratch 1.X [239] and Tynker are Linux compatible. Enterbrain's RPG Maker MV was released for Linux. [240] In addition, open-source, cross-platform clones of the RPG Maker series exist such as Open RPG Maker, MKXP and EasyRPG, [241] as well as the similar OHRRPGCE and Solarus. [242] The Adventure Game Studio editor is not yet ported to Linux, although games made in it are compatible, and the Wintermute and SLUDGE [243] adventure game engines are available. ZGameEditor, [244] Novashell, [245] GB Studio, [246] and the ZZT inspired MegaZeux [247] are also options. Versions of Mugen were made available for Linux, [248] and open-source re-implementations such as IKEMEN Go are compatible. [249] The JavaScript based Ct.js [250] Pixelbox.js, [251] and Superpowers [252] are also options.
Various level editors exists for Linux, such as wxqoole, GtkRadiant, TrenchBroom [253] [254] and J.A.C.K. [255] for the id Tech engines and related, Eureka, [256] SLADE [257] and ReDoomEd [258] for the Doom engine, and the general purpose tile map editors LDtk, [259] Ogmo, [260] and Tiled. [261]
Several game development tools have been available for Linux, including GNU Debugger, LLDB, Valgrind, glslang and others. VOGL, a debugger for OpenGL was released on 12 March 2014.
There are multiple interfaces and Software Development Kits available for Linux, and almost all of them are cross-platform. Most are free and open-source software subject to the terms of the zlib License, making it possible to static link against them from fully closed-source proprietary software. One difficulty due to this abundance of interfaces, is the difficulty for programmers to choose the best suitable audio API for their purpose. The main developer of the PulseAudio project, Lennart Poettering, commented on this issue. [262] Physics engines, audio libraries, that are available as modules for game engines, have been available for Linux for a long time.[ time needed ][ citation needed ]
The book Programming Linux Games covers a couple of the available APIs suited for video game development for Linux, while The Linux Programming Interface covers the Linux kernel interfaces in much greater detail.
Library | License | in | Language bindings | Back-ends | Description | |||||
---|---|---|---|---|---|---|---|---|---|---|
Icon | Name | Official | 3rd-party | Linux | Windows | OS X | Other | |||
Allegro | zlib License | C | Yes | Yes | Yes | Android, iOS | ||||
ClanLib | zlib License | C++ | Python, Lua, Ruby | Yes | Yes | — | — | |||
GLFW | zlib License | C | — | Ada, C#, Common Lisp, D, Go, Haskell, Java, Python, Rebol, Red, Ruby, Rust | Yes | Yes | Yes | a small C library to create and manage windows with OpenGL contexts, enumerate monitors and video modes, and handle input | ||
Grapple | LGPL-2.1+ | C | Yes | Yes | Yes | free software package for adding multiplayer support | ||||
Nvidia GameWorks | Proprietary | Unknown | WIP | Yes | — | — | As the result of their cooperation with Valve, Nvidia announced a Linux port of GameWorks. [263] As of June 2014, PhysX, and OptiX have been available for Linux for some time. | |||
OpenPlay | APSL | C | Yes | Yes | Yes | — | networking library authored by Apple Inc. | |||
Pygame | LGPL-2.1 | Python | Yes | Yes | Yes | build over SDL | ||||
RakNet | 3-clause BSD | C++ | C++, C# | — | Yes | Yes | Yes | PlayStation 3, iOS, ... | game network engine for multi-player | |
SDL | zlib License | C | C | C#, Pascal, Python, Gambas | EGL, Xlib, GLX? | GDI, Direct3D | Quartz, Core OpenGL? | PSP-stuff | a low-level cross-platform abstraction layer | |
SFML | zlib License | C++ | C, D, Python, Ruby, OCaml, .Net, Go | Yes | Yes | Yes | ||||
wxWidgets | LGPL-like | C++ | Yes | Yes | Yes |
Beside majority of the software which acts as an interface to various subsystems of the operating system, there is also software which can be simply described as middleware. A multitude of companies exist worldwide, whose main or only product is software that is meant to be licensed and integrated into a game engine. Their primary target is the video game industry, but the film industry also utilizes such software for special effects. Some very few well known examples are
A significant share of the available middleware already runs natively on Linux, only a very few run exclusively on Linux.
Numerous source code editors and IDEs are available for Linux, among which are Visual Studio Code, Sublime Text, Code::Blocks, Qt Creator, Emacs, or Vim.
A multi-monitor setup is supported on Linux at least by AMD Eyefinity & AMD Catalyst, Xinerama and RandR on both X11 and Wayland. Serious Sam 3: BFE is one example of a game that runs natively on Linux and supports very high resolutions and is validated by AMD to support their Eyefinity. [264] Civilization V is another example, it even runs on a "Kaveri" desktop APU in 3x1 portrait mode. [265]
The specifications of the Mumble protocol are freely available and there are BSD-licensed implementations for both servers and clients. The positional audio API of Mumble is supported by e.g. Cube 2: Sauerbraten .
Wine is a compatibility layer that provides binary compatibility and makes it possible to run software, that was written and compiled for Microsoft Windows, on Linux. The Wine project hosts a user-submitted application database (known as Wine AppDB) that lists programs and games along with ratings and reviews which detail how well they run with Wine. Wine AppDB also has a commenting system, which often includes instructions on how to modify a system to run a certain game which cannot run on a normal or default configuration. Many games are rated as running flawlessly, and there are also many other games that can be run with varying degrees of success. The use of Wine for gaming has proved controversial in the Linux community as some feel it is preventing, or at least hindering, the further growth of native gaming on the platform. [266] [267]
There are numerous emulators for Linux. There are also APIs, virtual machines, and machine emulators that provide binary compatibility:
Linux has been ported to several game consoles, including the Xbox, PlayStation 2, PlayStation 3, PlayStation 4, [268] GameCube, [269] and Wii which allows game developers without an expensive game development kit to access console hardware. Several gaming peripherals also work with Linux. [270] [271]
Linux gaming can be divided into a number of sub-categories. [272] [273] [274]
Libre gaming is a form of Linux gaming that emphasizes libre software, which often includes levels and assets as well as code. [275] [ self-published source? ] [276] [ irrelevant citation ]
Native gaming is a form of Linux gaming that emphasizes using only native games or ports and not using emulators or compatibility layers. [266] [137] [277] [278]
DRM-free gaming is a form of Linux gaming that emphasizes boycotting DRM technologies. This can include buying games from GOG.com, certain Humble Bundles or itch.io and avoiding Steam and similar services. [279] [280]
Terminal gaming is the playing of text-based games from within a console, [281] often programmed within Bash or using libraries such as ncurses. [282] [283]
Retrogaming is the playing of older games [284] using emulators such as MAME or Dosbox, [285] compatibility layers such as Wine and Proton, [286] engine reimplementations and source ports, [287] or even older Linux distributions (including live CDs and live USB, or virtual machines), [288] [289] original binaries, [290] and period hardware. [291]
A number of games can be played from live distributions such as Knoppix, allowing easy access for users unwilling to fully commit to Linux. [292] Certain live distros have specially targeted gamers, such as SuperGamer and Linux-Gamers. [293] [294]
Browser gaming is the act of playing online games through a web browser, [295] which has the advantage of largely being platform independent. [296] [297] The same largely applies to social network games hosted on social media sites. [298] Older games were largely based on Adobe Flash, [299] while modern ones are mostly HTML5. [300]
Cloud gaming is the streaming of games from a central server onto a desktop client. [301] This is another way to play games on Linux that are not natively supported, [302] [303] although some cloud services, such as the erstwhile Google Stadia, [304] [305] are hosted on Linux [306] [307] and Android servers. [308] GamingAnywhere is an open source implementation. [309]
Although less exploited than the reverse, [310] as few programs are Linux exclusive, [311] support does exist for running Linux binaries from Windows. [312] [313] The Windows Subsystem for Linux allows the running of both command line [314] [315] and graphical Linux applications [316] from Windows 10 and Windows 11. [317] An earlier implementation is Cygwin, [318] started by Cygnus Solutions and later maintained by Red Hat, [319] although it has limited hardware access [320] and required adaptation. [321] The use of Wine can even allow for the running of Windows games on Linux from Windows.[ citation needed ] The LibTAS library for tool assisted speedruns currently recommends WSL to run on Windows. [322] Naughty Dog meanwhile have used Cygwin to run old command-line tools for use in their game development, [323] which is a broader use for the platform. [324] As with running Windows applications on Linux, there is controversy over whether running Linux applications on Windows will dilute interest in Linux as distinct platform, [325] though it has speciality uses. [326]
Originally derived from Linux, the Android mobile operating system has a distinct and popular gaming ecosystem. [327] It has also been used as the base for several game consoles, such as the Nvidia Shield Portable and the Ouya. [328] Popular games include Pokemon Go , Genshin Impact , League of Legends: Wild Rift , Dead Cells and Call of Duty: Mobile . [329] Certain games, such as Minecraft , Stardew Valley , and Papers Please , are available for both Android and desktop Linux. [330]
ChromeOS is another Linux derived operating system by Google for its Chromebooks, [331] and it too has a dedicated gaming ecosystem. [332] [333] Partly owing to a lack of high end graphics hardware, [334] [335] it is especially oriented towards cloud gaming [336] via services like GeForce Now and Xbox Cloud Gaming, [337] [338] with models featuring Nvidia GPUs ultimately being cancelled. [339] Numerous games for Android have also been made compatible with ChromeOS, [340] [341] as well as a standard Linux games, [342] [343] [344] Windows games via Wine or Proton, [345] [346] [347] and with browser games also being popular. [348] A version of Steam has been in development for ChromeOS, [349] with third party launchers also available such as the Heroic Games Launcher for the Epic Games Store. [350] Popular titles include Among Us , Genshin Impact , Alto's Odyssey , Roblox , and Fortnite . [351] [352] [353] [354] Skepticism remains for using ChromeOS and Chromebooks as gaming machines. [355] [356] [357]
Owing to a common Unix-like heritage and free software ethos, many games for Linux are also ported to BSD variants [358] or can be run using compatibility layers such as Linuxulator. [359] BSDi had partnered with Loki Software to ensure its Linux ports ran on FreeBSD. [360] The Mizutamari launcher exists to facilitate running Windows games through Wine, [361] which can still be used standalone. [362] A 2011 benchmark by Phoronix even found certain speed advantages over running games on Linux itself, comparing PC-BSD 8.2 to Ubuntu 11.04. [363] Most BSD systems come with the same pack in desktop games as Linux. [364] The permissive licensing of BSD has also lead to its inclusion in the system software of several game consoles, such as the Sony PlayStation line [365] [366] and the Nintendo Switch. [367]
HarmonyOS with custom kernel [368] and OpenHarmony-Oniro based operating systems distros [369] of these newer platforms has a dedicated gaming ecosystem with compatibilities with third-party Linux libraries by developers on Linux kernel subsystem such as musl-libc of C standard library that targets the Linux syscall and POSIX APIs compatibility for native compatible games as well as limited virtual machines such as Android-based sandboxed ones. [370] [371]
A further niche exists for running games, either through ports or lxrun, [372] on Solaris [373] and derivatives such as OpenIndiana, [374] Darwin distributions such as PureDarwin, [375] Coherent, [376] SerenityOS, [377] [378] Redox OS, [379] [380] ToaruOS, [381] Xv6, [382] Fiwix, [383] or on Minix [384] and Hurd based systems. [385] There has been some cross-pollination with purely proprietary Unix derivatives, [386] such as AIX, [387] QNX, [388] Domain/OS, [389] HP-UX, [390] IRIX (see here), [391] [392] Xenix, [393] SCO Unix, [394] Unixware, [395] Tru64 UNIX, [396] [397] LynxOS (which features inbuilt Linux compatibility [398] ), Ultrix, [399] OpenVMS, [400] [401] z/OS UNIX System Services, [402] and even A/UX. [403] The games Doom and Quake were developed by id Software on NeXTStep, [404] a forerunner of modern macOS, [405] before being ported to DOS and back to numerous other Unix variants. [406] This involved reaching out to numerous Unix vendors to supply machines to use in the build and testing process. [407]
Wine is a free and open-source compatibility layer to allow application software and computer games developed for Microsoft Windows to run on Unix-like operating systems. Developers can compile Windows applications against WineLib to help port them to Unix-like systems. Wine is predominantly written using black-box testing reverse-engineering, to avoid copyright issues. No code emulation or virtualization occurs. Wine is primarily developed for Linux and macOS.
In computing, cross-platform software is computer software that is designed to work in several computing platforms. Some cross-platform software requires a separate build for each platform, but some can be directly run on any platform without special preparation, being written in an interpreted language or compiled to portable bytecode for which the interpreters or run-time packages are common or standard components of all supported platforms.
Loki Software, Inc. was an American video game developer based in Tustin, California, that ported several video games from Microsoft Windows to Linux. It took its name from the Norse deity Loki. Although successful in its goal of bringing games to the Linux platform, the company folded in January 2002 after filing for bankruptcy.
id Tech 3, popularly known as the Quake III Arena engine, is a game engine developed by id Software for its 1999 game Quake III Arena. It has subsequently been used in numerous games. Commercially, id Tech 3 competed with early versions of the Unreal Engine; both were widely licensed. Originally proprietary, it is now open-source software.
The Quake II engine, is a game engine developed by id Software for use in their 1997 first-person shooter Quake II. It is the successor to the Quake engine. Since its release, the Quake II engine has been licensed for use in several other games.
Cube 2: Sauerbraten is a first-person shooter released for Microsoft Windows, Linux, FreeBSD, OpenBSD, and Mac OS X using OpenGL and SDL.
Linux Game Publishing was a software company based in Nottingham in England. It ported, published and sold video games running on Linux operating systems. As well as porting games, LGP also sponsored the development of Grapple, a free software network library for games. As well as acting as a Linux game porter in of themselves, they also functioned as a publisher for other Linux game developers and porters. The company was dissolved on 3 May 2011.
Mac gaming refers to the use of video games on Macintosh personal computers. In the 1990s, Apple computers did not attract the same level of video game development as Microsoft Windows computers due to the high popularity of Windows and, for 3D gaming, Microsoft's DirectX technology. In recent years, the introduction of Mac OS X and support for Intel processors has eased the porting of many games, including 3D games through use of OpenGL, and more recently, Apple's own Metal API API. Virtualization technology and the Boot Camp dual-boot utility also permit the use of Windows and its games on Macintosh computers. Today, a growing number of popular games run natively on macOS, though as of early 2019, a majority still require the use of Microsoft Windows.
An open-source video game, or simply an open-source game, is a video game whose source code is open-source. They are often freely distributable and sometimes cross-platform compatible.
GNU variants are operating systems based upon the GNU operating system. According to the GNU project and others, these also include most operating systems using the Linux kernel and a few others using BSD-based kernels.
Ryan C. Gordon is an American computer programmer and former Loki Software employee responsible for icculus.org, which hosts many Loki Software projects as well as others. Gordon's site hosts projects with the code from such commercial games as Duke Nukem 3D, Shadow Warrior, Quake III Arena and other free and open source projects for multiple platforms.
Video Decode and Presentation API for Unix (VDPAU) is a royalty-free application programming interface (API) as well as its implementation as free and open-source library distributed under the MIT License. VDPAU is also supported by Nvidia.
Timothée Besset is a French software programmer, best known for supporting Linux, as well as some Macintosh, ports of id Software's products. He was involved with the game ports of various id properties through the 2000s, starting with Quake III Arena. Since the development of Doom 3 he was also in charge of the multiplayer network code and various aspects of game coding for id, a role which had him heavily involved in the development of their online game QuakeLive. Since departing id in January 2012 he has worked as a software contractor, including for Valve Software.
SteamOS is a Arch Linux-based Linux distribution developed by Valve. It incorporates Valve's video game storefront Steam and is the official operating system for the Steam Deck, Valve's portable gaming device, as well as Valve's earlier Steam Machines.
Besides the Linux distributions designed for general-purpose use on desktops and servers, distributions may be specialized for different purposes including computer architecture support, embedded systems, stability, security, localization to a specific region or language, targeting of specific user groups, support for real-time applications, or commitment to a given desktop environment. Furthermore, some distributions deliberately include only free software. As of 2015, over four hundred Linux distributions are actively developed, with about a dozen distributions being most popular for general-purpose use.
bhyve is a type-2 (hosted) hypervisor initially written for FreeBSD. It can also be used on a number of illumos based distributions including SmartOS, OpenIndiana, and OmniOS. A port of bhyve to macOS called xhyve is also available.
Lumina Desktop Environment, or simply Lumina, is a plugin-based desktop environment for Unix and Unix-like operating systems. It was designed specifically as a system interface for TrueOS and systems derived from Berkeley Software Distribution (BSD) in general, but it has been ported to various Linux distributions.
Proton is a compatibility layer that allows Windows games to run on Linux-based operating systems. Proton is developed by Valve in cooperation with developers from CodeWeavers. It is a collection of software and libraries combined with a patched version of Wine to improve performance and compatibility with Windows games. Proton is designed for integration into the Steam client as "Steam Play". It is officially distributed through the client, although third-party forks can be manually installed.
Comparison of user features of operating systems refers to a comparison of the general user features of major operating systems in a narrative format. It does not encompass a full exhaustive comparison or description of all technical details of all operating systems. It is a comparison of basic roles and the most prominent features. It also includes the most important features of the operating system's origins, historical development, and role.
DXVK is an open-source translation layer which converts Direct3D 8/9/10/11 calls to Vulkan. It is used by Proton/Steam for Linux, by Intel Windows drivers, VirtualBox 7.0, and it can be used to run Direct3D-based games under Windows using Vulkan. DXVK has been confirmed to support over 80% of Direct3D Windows games "near flawlessly".
The developers wanted to play the game on a PDP-7, a minicomputer built by Digital Equipment Corp found in the corner of their building. But the game couldn't be run run on more modern (and hence costly) equipment, as computing resource was a precious commodity back then. By the summer of 1969 they had developed the new Unix OS that could run the computer game and in 1971 the first ever edition of Unix was released. A second edition of Unix arrived in December 1972 and was rewritten in the higher-level language C.
Apart from the text-processing and general system applications, the first edition of Unix included games such as blackjack, chess, and tic-tac-toe.
Some of our system components, the programming tools, became popular on their own among programmers, but we wrote many components that are not tools. We even developed a chess game, GNU Chess, because a complete system needs games too.
It would be nice to see some extra CD goodies included, such as Doom and Quake which are freely available elsewhere.
The X Windows version supplied on the accompanying Slackware CD-ROM in the /contrib directory is a complete hareware version. (The Red Hat distribution automatically installs the game during installation.) Although this version runs on 386 computers, it was built to run on high-end 486 systems. If you run DOOM on a 386 with a small amount of physical RAM, be prepared to be disappointed; the game will be too slow to be enjoyable. You need lots of horse-power to play DOOM under Linux.
This disk set contains a collection of well-known UNIX games (X is not required), such as Hangman, Dungeon, and Snake. The set also includes id Software's DOOM. (This game comes in two versions, one runs under X, and the other runs without X.) You may want to install this disk set just so you can try out DOOM.
DOOM - This exciting, though controversially gory, game is now ported to Linux as well. Complete with sound support and exquisite graphics, this Linux port does its DOS counterpart justice.
A classic, and very easy-to-follow SUID attack is the on the file /usr/lib/games/abuse/ abuse.console—part of a game that was distributed with Open Linux 1.1 and Red Hat 2.1. Yes, you read that right: Even a game can be a security risk to the system.
While still being the most elaborate, 100 Great Linux Games was far from the only shovelware set of games released for Linux, with several UNIX CD-ROM vendors such as Walnut Creek CDROM and Omeron Systems also seeking a piece of the action for themselves.
Linux Games (Linux) - Large collection of games, graphics, sound, and video applications, plus related development tools.
Formerly known as 'Linux Games++', this is a collection of the best entertainment and multimedia programs for the Linux operating system. It also contains multimedia development tools to assist you in creating your own games and multimedia applications for Linux. This is the latest issue, volume 4, and features a new and improved user interface. The CD contains packages for i386, DEC Alpha, and PPC platforms. This product is only available through Walnut Creek CD-ROM.
I did discover that Phobia III was later packaged as part of the Russian made LinuxCenter Games Collection Vol.2 compilation, a selection of Linux gaming files that was sold on either four CD-ROMs or a single DVD, but this too appeared to have been scrubbed from the internet.
According to White in a 2006 NewsForge interview, this forking caused Wine's development to slow down for years. "Historically, the main interest for volunteer Wine developers was games; that was the primary focus for most of Wine's early years (~1993-2000). When Transgaming started in 2001, they promised that they would release their DirectX improvements back to Wine. That cast a chill over games in Wine — why work on DirectX if all these improvements would 'soon' be coming back? Of course, no meaningful improvements have ever come back, which had the effect of creating a huge hole in what had been Wine's very best facility." By 2007, White says, "The Wine community had recovered from the hole created by Transgaming."
An excellent way to start using the Zaurus is by playing games. The best way to play games on the Zaurus is to install an emulator.
In short: indie games are thriving on Linux. The Humble Bundles have not only helped publicize the games, but have also helped prove that there is an untapped market for games on Linux, and that Linux users have no problem paying to support the developers who support them.
Linux users tended to be the most generous of these, leading Graham to suggest indie developers go after underserved markets. "If you support Mac and Linux as an independent developer you have a good chance of doubling your revenue," Graham said.
It uses a Linux-based emulator running on a 1GHz Jz4770 system-on-chip
Fortunately, the SNES Classic, like its predecessor, is basically a Nintendo emulator built on a Linux foundation, so it's not impossible to hack.
Let this look at the taken-apart Sega Genesis Mini remind you that, like other recent retro consoles, the SGM relies on a Linux-driven SoC.
But our OS is a hybrid, a Linux/Android hybrid that we've created in house. It's very solid, but it's very flexible, with Linux being the flexible part and Android being the solid part.
The Polymega is a software emulation-based console with a custom, Intel-backed motherboard running on Linux with a custom user interface.
Inside, the Evercade features a 1.2GHz Cortex A7 SoC running a customized Linux setup.
The custom Linux operating system that the EXP runs borrows from the VS home console.
You can also play through the terminal; Of course, it depends on your expectations and definition of the game! But if the goal is entertainment, the Linux terminal offers you funny and nostalgic choices.
The ever increasing popularity of social gaming is a definite threat to traditional forms of gaming. Social gaming comes in many forms, but an obvious example would be games that can be played on Facebook and other social networking websites where games and statistics can be viewed and shared online with a player's friends. This form of gaming is very limited as the games that can be played via social networks are usually targeted towards casual gamers and not the hardcore PC type. I don't see social gaming becoming an immediate threat to native gaming in the near future and will probably remain a casual space.
While Hedgewars is not a Linux-only game, I wanted to include it to show that even games can run under WSLg. While WSLg is likely not designed for gaming, the fact that you can play games using it shows the full depth of this new feature.
Blockout worked flawlessly, which surprised me as it is an extremely graphics-intensive application.
Can you run games? I have absolutely no idea, but I would guess the answer is no, because of the lack of hardware access. I did have a quick look for games like Neverball and Extreme Tux Racer, but they were nowhere to be found. When I follow this up, I'll look a bit harder, and maybe try compiling them. Really, it's kind of pointless, because you could just run the games in Windows.
If you have Windows 10, the easiest way is to use WSL 2 (Windows Subsystem for Linux) to run libTAS. Otherwise, you can install a Linux distribution (e.g. Ubuntu) on a virtual machine (e.g. using VirtualBox).
Mesa3D support should help developers using WSL 2 to port games to Linux, as well as allowing complex Unix CAD applications and other design tooling to use WSLg to work on Windows, without needing a full port. If you're worried about application support, we've yet to find anything that didn't work over WSLg. We've been able to run Ubuntu desktop tools, classic Unix games like Nethack's X11 port, Linux games from Steam, a host of different editors and IDEs, the LibreOffice productivity suite, as well as Microsoft's own Edge browser (using it to stream video and audio). The experience of using Linux applications on Windows is much like running Windows applications on macOS via Parallels.
If you're running KDE or Gnome, you already have a few simple games installed. I'm not a fan of either desktop -- both strike me as bloated and obtuse -- but their games packages are a nice way to pick up a dozen simple favorites such as Solitaire, Asteroids, and Tetris.
But the real strength of Linux over Solaris is the availability of games. Kay reveals, "If you've got a developer who's been doing heads-down coding for hours, they might want to take a break to use the latest greatest games," she chuckles. "If games are available on Linux now you can get them and use them on your new Solaris workstation. Managers like making sure that kind of thing is available to their creative end users."
For a small package, it was remarkably complete. Not only was it a standalone operating system, but came with a big box of goodies, such as a Bourne Shell, C compiler, assembler, debugger, DOS disk support, uucp, at least three editors, some games, mail, and around 200 of the most used and useful UNIX commands.
Among the ports already available we can find those of several popular video games such as Quake (I and II), Half-Life (since last January), Doom or VVVVVV, which complement own developments of the project's collaborators
While not yet having accelerated graphics and their Wayland support is still some ways out, they have ported some games/emulators to Redox OS already like DOSBox, Neverball, OpenTTD, ScummVM, 2048, and others.
I ported Helicopters, one of my games, just to show you how easy you can port games to it.
However, some teams put more energy into doing fun such as running games or playing music by connecting a speaker with their CPU. Group 6, to which I belonged, was a group of such people who loved entertainment, and we decided to run an OS as our team goal.
lxdoom-1.4.4
SDL officially supports Linux, Windows, BeOS, Mac OS, Mac OS X, FreeBSD, OpenBSD, BSD/OS, Solaris and IRIX. SDL also works with Windows CE, AmigaOS, Atari, QNX, NetBSD, AIX, Tru64 UNIX and SymbianOS. However, those OSes are not yet officially supported. This means if you write your application using SDL, you can port it with minimal rework to all those OSes. SDL provides a portable way to write games and multimedia applications on every major OS currently in use.
The rest of the adventure went fairly well. He managed to build SDL and port over some games.
Remake of Battle Zone (1986) by Justin S. Revenaugh for Apollo Domain/OS, using the GPR graphics library. The game was later ported as XBZONE to X11.
Thankfully XENIX users weren't all business, and there are at least a few games available for the system. Although the IMG file from Archive.org wouldn't work, we found a working disk image from YouTube user MentionedBefore, who provides a link below his XENIX 2.3.1 VirtualBox tutorial. The disk comes with Worms (not the famous DOS game!), Rogue, Hack, and Trek, plus fortune and mathrec. (And there is a terminal-based version of Tetris somewhere out there!) Once installed, the executables for the games/amusements are found under /usr/games
Once a user is logged in, a window displays a number of icons that group some standard applications: Accessories, Applications, Preferences, Disks, Games, Shutdown, System Setup, Utilities, and Folder Maps. User can open any file or folder by double clicking on the appropriate icon.
The beast is not designed for Windows - its OS preference a version of real time Tru64 using current OpenGL for the platform. Real time versions of Tru64 might be used in a high end arcade game console, with workstations using a more "normal" Tru64 Unix with OpenGL. Quake and Quake 2 are native on Alpha Linux platforms.
Section 6: Games - The reference pages in this section describe the games that are available in the unsupported software subset.
This screenshot shows Facebook, looking rather broken, and DOOM in the front. id Software used NeXT systems to create the famous first person shooter. Relying on the Objective-C based development environment to create most of the tools, like the level editor.
Anyway, so it felt almost natural to do weird things. Here was a company where hundreds of thousands of dollars changed hands depending on moods and stories, Nextstep was the development environment, and showing up to work and seeing something truly miraculous in John Carmack's office or the art room about once a week was the norm. So when I started calling various workstation vendors like IBM, Sun, SGI, and asking they send workstations in exchange for typing "make", no one was terribly surprised. It was just one more of the weekly miracles, and a lesser one at that. "Oh look. There's our game running in a window on 5 architectures and as many OS's. Huh."