Linuxゲーム

LinuxゲームとはLinuxで利用できるビデオゲームのことを指す。Linux向けには多数のビデオゲームが開発されているが、本稿ではこれらのビデオゲームとそれを支える技術について概説する。
歴史.
Linuxにおけるゲームは、当初Unixにおけるゲームシーンの拡張としてはじまった。両方のシステムは多くの同様のタイトルを共有している。これらのゲームの大部分は、アーケードゲームや、テキストベースのアドベンチャーゲームのクローンタイトルや新規開発タイトルであった。この有名な例は"BSD Games"と呼ばれるインタラクティブフィクションのゲームの集合体である。フリーソフトウェアとオープンソースの方法論はOSの開発に広まったが、これはまた、初期のフリーゲームの開発にもつながった。初期の人気のあったタイトルには、"NetHack"、"Netrek"、"XBill"、"XEvil"、"xbattle"、"Xconq"、"Xpilot"などが含まれる。
1990-1998.
Linuxの商業的なビデオゲームのためのプラットフォームとしての始まりは、1994年にDave D.Taylorが"Doom"を、他のシステムに対してと同様に、Linuxに移植したことに始まる。彼の助力はまた、ゲーム開発スタジオ"Crack dot Com"にも見られ、このスタジオは"Abuse"という、後にLinuxベンダのRed HatによってLinuxへの移植版が公開されたゲームをリリースしている。"Quake"と名付けられたゲームは、同様にTaylorによって、彼の自由時間を用いてLinuxに移植された。また、1998年、Originからの2人のプログラマが、"Ultima Online"をLinuxに移植している。"The Linux Game Tome"というウェブサイトは、1995年にLinuxのために作られた、または移植されたゲームのカタログを作成している。
1998-2002.
1998年11月9日、Loki Softwareと呼ばれたソフトウェア会社が、Scott Dreakerによって設立された。Lokiは、商業的には失敗に終わったが、現代のLinuxのゲーム業界の誕生として記憶される。Lokiは、Loki インストーラや、SDLの開発のサポート、OpenALオーディオライブラリのプロジェクトの開始など、いくつかのフリーなソフトウェアやツールの開発を行った。これらは、現在においても、Linuxにおけるゲーム開発の礎石と目される。
2002-2010.
Lokiの倒産後、Linuxゲームの市場はいくつかの変化を経験した。Linux Game PublishingやRuneSoftのような新しい会社が生まれたが、これらは主に移植の役割を果たしていた。これに影響したのが、かつてのLokiの従業員のRyan C. Gordonで、彼は次の10年の間にいくつかのゲームのタイトルをLinuxを含むプラットフォームに移植した。
Linuxゲームの市場はまた、独立したビデオゲーム開発の増加というディケイドの終了に向けていくつかの成長の経験を始めた。これは、マルチプラットフォームをサポートすることによる"インディー"な開発者によるものである。小規模な独立開発者にフォーカスした、Linuxバージョンのデジタル配信のプラットフォームである"Desura"のリリースは、何人かのコメンテーターに、Linuxのゲーミングプラットフォームとしての認知のための重要なステップだと歓迎された。
2010-現在.
2012年7月、ゲーム開発者でコンテンツの配布者であるValve Softwareは、彼らのソースエンジンのLinuxに対する移植と、彼らのStreamと名付けられたLinuxのためのデジタル配信サービスのリリースを宣言した。LinuxのSteamクライアントの潜在的な利用可能性は他の開発者にゲームのタイトルをLinuxに移植するよう影響した。
2012年には、Unity Technologieが、Unityとゲーム制作システムをLinuxに移植した。全てのUnityエンジンで作成されたゲームは容易にLinuxに移植することができるようになった。また、2013年9月には、Valveは、彼らのゲーム指向のLinuxベースのOS、"SteamOS"のためのデジタル配信サービスのリリースを宣言した。その後、2018年には、Valveは、ゲーミングを狙いとしたWineのフォークである"Proton"をリリースしている。
市場シェア.
Steam Hardware Surveyの報告によると、2019年4月現在で0.81%のユーザーが、何らかの形態のLinuxを彼らのプラットフォームの第一のOSとして使っている。Unityは過去に彼らの統計を明らかにしていたが、それによると2016年3月にはLinuxユーザーはプレーヤーの0.4%を占めていたという。また、2010年に最初の"Humble Bundle"が発売されたとき、その売り上げの18%はLinuxが占めていた 。
ソフトウェアアーキテクチャ.
Linuxカーネルに基づくOSは、ゲームのためにカスタマイズすることができ、これは"vanilla"Linux カーネルを少し変更することで実現できる。また、Androidのように相対的に大きく改変されたLinuxカーネルを用いることもできる。
Linuxカーネル.
Linuxカーネルにおいてすでにメインライン化されて利用可能なサブシステム群は、十分なパフォーマンスを発揮するため、ゲーム体験を邪魔することはないが、追加のソフトウェアが利用可能である。これには、BFS（プロセススケジューラー）や、BFQ（I/Oスケジューラー）が例として挙げられる。
ゲーム開発者向けに利用可能なソフトウェア.
Linuxでは、GDB、LLDB、Valgrindなどの開発ツールを用いることができる。VOGLはOpenGLのためのデバッガで、2014年3月12日にリリースされた。オープンソースでクロスプラットフォーム向けのEnterbrainのRPG Makerのクローンは現在開発中で、これはOpenRPG Makerと呼ばれる。
また、いくつかのインタフェースとSDKがLinux向けに利用でき、それらの大部分はクロスプラットフォームである。また、インタフェースが存在しないことに伴って、プログラマがその目的に最適な音声APIを選択することが難しくなっていることを、PulseAudioプロジェクトのLennart Potteringなどが指摘している。
マルチモニタ対応.
Linuxにおいては、少なくとも、AMD EyefinityとAMD Catalyst、XineramaとRandRがX11とWaylandの両方でマルチモニタ構成をサポートしている。"Serious Sam3:BFE"は、Linuxでネイティブに動作するとともに、高解像度をサポートし、AMDによってEyefinityをサポートすると検証されたゲームの例である。
Wine.
Wineは、Linux上において、Microsoft Windowsのために書かれ、コンパイルされたソフトウェアを動作させることを可能にするバイナリ互換性を提供する互換レイヤである。Wineのゲーム向けの利用は、Linuxコミュニティにおいて議論を呼んでいる。これは、Wineの利用が、ネイティブゲームのプラットフォームとしてのLinuxの成長を妨げると感じられることによる。