SVGAlib は、「Linux SuperVGA Graphics Library」と表記され、Linux上で動作する PC 互換システムでSuperVGAハードウェアにアクセスするための、古いオープンソースの低レベルグラフィックスライブラリであり、後にAmigaOSおよびFreeBSDに移植されました。SVGAlib を使用すると、ウィンドウシステムを使用せずに、プログラムがビデオモードを変更してフルスクリーングラフィックスを表示できます。[ 3 ] [ 4 ] X11およびGeneral Graphics Interfaceと並んで、 Linux 上でグラフィカルなビデオゲームを可能にする初期のライブラリの 1 つでした。
SVGAlibは現在もオンラインで入手可能ですが、2006年7月以降( 20年前)コードのリリースはなく、既に旧バージョンに取って代わられ、開発が中止されたとみなされます。
SVGAlibの最初のバージョンは、Tommy Frandsenによる別のライブラリVGAlibのバージョン1.2をベースにしていました。[ 5 ] SVGAlibは、より多くのSuperVGAチップセットとビデオモードのサポートを追加しました。
Ambrosia SoftwareのSam LantingaによるMaelstrom 、 QDGDFライブラリを使用した一人称視点ゲームのFreaks!とSpace Plumber [ 6 ] [ 7 ] 、 [ 8 ] [ 9 ]、そして最も有名なid SoftwareのDoom(X11バージョンと共に)とQuake(リークされたソースコードに基づくサードパーティのパッチの提出後[ 10 ])など、いくつかのゲームが他のオペレーティングシステムからSVGAlibを使用するように移植されました[ 11 ] 。Doomの移植者であるDave TaylorのAbuseも同様です。
Wolfenstein 3Dも 1995 年にソースコードが公開された後に移植され、 [ 12 ] idが 1999 年以降に制作したHeretic、 Hexen、 Hexen IIも、 [ 13 ] Parallax Softwareが1998 年以降に制作した DescentとDescent IIも移植されました。 [ 14 ] Doom、 Quake、 Abuseの一部のソースポートはSVGAlib のサポートを維持しました。 [ 15 ]このライブラリはMAME / MESSエミュレータでもサポートされています。 [ 16 ]
これをサポートするLinuxファーストパーティゲームには、Alizarin Tetris、[ 17 ] Bdash、[ 18 ] Fleuch、[ 19 ] Hatman、[ 20 ] Intelligent FRAC、[ 21 ] Koules、[ 22 ] LinCity、[ 23 ] [ 24 ] Linberto、[ 25 ] Quadra、[ 26 ] Repton、[ 27 ] SABRE、[ 28 ] Thrust ( GGIもサポート)、[ 29 ] Zarch、[ 30 ]およびZblast、[ 31 ]などがある。[ 32 ] [ 33 ] [ 34 ]
SVGAlib は 1990 年代半ばから後半にかけて人気がありました。[ 35 ] [ 36 ]参考書として、Jay Link が 2000 年にLinux Graphics Programming with SVGAlib を執筆しました。 [ 37 ] 2000 年頃、SVGAlib を使用していた多くのアプリケーションがX11とSDLに移行しました。[ 38 ] SDL は (SDL 2.0 までは) SVGAlib をビデオ ドライバとして使用できました。[ 39 ] [ 40 ]これは、SVGAlib がアプリケーションを「root」ユーザーとして実行する必要があるため、権限昇格のリスクがあったことが一因です。[ 41 ] [ 42 ] [ 43 ]
これは、svgalib (Harm Hanemaayer によるスーパー VGA グラフィックス ライブラリ) 上で動作するように、xasteroids を直接移植することから始まった。
Linux Wolf - ウィンドウ (xwolf3d) または svgalib (swolf3d) で動作します。
色グラフィックとデジタル化されたサウンドを備えたBoulder DashのLinuxクローン。svgalibライブラリが必要です。
Hatman - The Game of Kings は印象的だが未完成の SVGAlib クローンのパックマンで、ディスクには RPM パッケージがあるものの、残念ながらコンパイル時にサウンド サポートが無効になっている。他にも多くのパックマン クローンが紹介されていたが、これが最も可能性を秘めていた。
lincity は都市/国を建設および維持するゲームです。都市を建設および維持する必要があります。住民に食料、住居、仕事、および物資を提供しなければなりません。再生可能エネルギーとリサイクルの助けを借りて持続可能な経済を構築することもできますし、汚染され資源が不足している惑星から脱出するためにロケットを建造するという無謀な選択をすることもできます。それはあなた次第です。ある場所で利用できる資源には限りがあるため、このゲームを長期間放置することはできません。このゲームは、同様の名前の市販のシミュレーション ゲームに似ています。このパッケージは、ゲームの X バージョンと SVGALIB バージョンの両方に共通するファイルを提供します。
は美観に合わないだけでなく、特に SVGAlib をグラフィックに利用するゲームをプレイしているときに、それ以外は正常に動作するディスプレイの上に範囲外であるという警告を表示するという厄介な癖もありました。LinCity の最終ビルドなど、より柔軟な SVGAlib ゲームを、問題のアプリケーションを起動する前に起動することで、この問題を回避することができました。どういうわけか、これがディスプレイの神経を落ち着かせるようでしたが、私はそのような頭痛の種から解放されることを喜んでいました。
は元々 Sandro Sigala が SVGAlib ライブラリを使用して Linux 用に作成したもので、その後、KDE のリリース 1.0 用に QT および KDE ライブラリを使用して完全に書き直されました。
Linux を初めてインストールしたとき、Thrust のリメイク版に出会いました。非常に難しかったですが、ゲームを楽しみました。当時、ルートアクセスが必要な古いコンソールグラフィックシステムである svgalib で実行していました。
制限事項はあるものの、SVGAlib はコンソール問題に対する安定した人気のあるソリューションであることが証明されており、Quake やその他のゲームで使用されている主要なインターフェースです。
私は昔からビデオゲームオタクだったので、この新しいシステムでどれだけゲームができるかを見るのが私にとって重要でした。Doomをフルスクリーンで実行できたときの興奮を覚えています。[グラフィックライブラリ] svgalibは、今では誰も懐かしがらないであろうモンスターでした。また、Mac用の洗練されたAsteroidsクローンのLinux移植版であるMaelstromにもかなり惹かれました。
SDL Sasteroids は、オリジナルの Sasteroids ゲームを現代のシステムで動作するように大幅に改訂したものです。オリジナルの Sasteroids ゲームと非常によく似たゲームプレイを提供するだけでなく、新しいファンと古いファンの両方が楽しめるように、いくつかのサプライズとアップデートが挿入されています。
:) Sasteroids は元々 svgalib 用に書かれた Asteroids ゲームでした。
はいえ、SVGAlib ゲームは SDL への魅力的で忘れ去られた足がかりだったので、今後その情報を投稿する予定です。
Quake および QuakeWorld サーバーはどのユーザーでも実行できます。ただし、Quake クライアントはサウンド カードとグラフィック カードへのアクセスが必要であり、これには通常のユーザーが持っていない権限が必要です。これに対処する (悪い) 方法の 1 つは、常に Quake を root として実行することです。責任あるシステム管理者は、この汚い提案に顔をしかめるでしょう。Quake バイナリを setuid root にすることは、より許容できる解決策です。そうすれば、Quake は通常のユーザーによって実行され、サウンド デバイスとグラフィック デバイスにアクセスするために必要な権限を保持できます。ただし、setuid にはセキュリティのリスクがあります。賢いユーザーは、Quake のバグまたはセキュリティ ホールを悪用して、システムへの root アクセスを取得する可能性があります。もちろん、マルチ ユーザー システムを実行していない場合は、これは大きな問題ではないかもしれません。