🐧

Extreme Tux Racerをソースからビルドして遊んでみた

に公開

Extreme Tux Racerとは

LinuxのマスコットキャラクターであるTuxペンギンくんを操作して雪山を滑り降り、スコアやタイムを競う3Dゲームです。
オープンソースとして公開されているので、誰でもソースコードを改変したり配布したりできます。

なぜソースからビルドするのか

  • 自分でビルドしたゲームで遊びたい
  • ソースコードから本格的なゲームが生成される過程を実際に体験したい。
  • ゲームを改造して遊べるようになりたい。

必要なツールとライブラリをインストールする

ソースコードだけではゲームをビルドすることはできません。依存しているライブラリやフレームワーク、ソースコードをビルドするために必要なツール群をインストールする必要があります。

ライブラリ

グラフィック関連のライブラリをインストールします。

sudo apt install libgl-dev libglfw3-dev libglew-dev libsfml-dev
  • libgl-dev
    OpenGLを用いた開発に必要なファイル群を含むパッケージです。
  • libglfw3-dev
    マルチプラットフォームのOpenGLフレームワークであるGLFWを含むパッケージです。
  • libglew-dev
    OpenGLの拡張機能を提供するライブラリのGLEWを含むパッケージです。
  • libsfml-dev
    マルチメディアアプリケーション向けの機能を提供するライブラリのSFMLを含むパッケージです。

ツール

C, C++をビルドするためのツールチェーンをインストールします。

sudo apt install build-essential

Makefileを生成するためのautotools, autoconfをインストールします。

sudo apt install autotools-dev autoconf

バージョン管理システムをインストールします。

sudo apt install git svn git-svn
  • svn
    集中型のバージョン管理システムであるSubversionを含むパッケージです。
  • git
    分散型のバージョン管理システムであるGitを含むパッケージです。
  • git-svn
    SubversionリポジトリをGitリポジトリに変換するためのGitの拡張機能を含むパッケージです。

ソースコードを取得する

ExtremeTuxRacerはsourceforge.netでSubversionでリポジトリとして配布されていますが、今後自分でゲームを改造したりGithubにアップできるようにしたいのでgit-svnを用いてGitリポジトリに変換してしまいます。

git svn clone -s https://svn.code.sf.net/p/extremetuxracer/code extremetuxracer-code

ビルド&インストール!

aclocal.m4を生成します。

aclocal

config.h.inを生成します。

autoheader

configureスクリプトを生成します。

autoconf

Makefile.inを生成します。

automake -a -c

Makefileを生成します。

./configure

ビルド&インストール!

make && make install

メニュー画面にExtreme Tux Racerのアイコンが追加されました。

Let's Play!

Practiceモードでタイムアタックに挑戦しました。

Canadian Cupの3つのコースの私のベストタイムです。

Course Time
Bunny Hill 27.8
Twisty Slope 29.7
Bumpy Ride 27.9

フルスクリーンモードにバグがあるようで、スタート画面やステージ選択画面、設定画面では画面右側3分の1の領域にカーソルを移動できなくなり、レース画面では画面全体が右側に寄ってしまうことがあります。今回はフルスクリーンモードをオフにして遊びました。

まとめ

Extreme Tux Racerをソースコードからビルドして遊んでみました。ビルドに必要なツールとして、グラフィック関連ライブラリ(libgl-dev, libglfw3-dev, libglew-dev, libsfml-dev)と、C/C++ビルドツールチェーン(build-essential)、Makefile生成ツール(autotools-dev, autoconf)、バージョン管理システム(git, svn, git-svn)をインストールしました。ソースコードは、git-svnを使ってSubversionリポジトリからGitリポジトリに変換して取得。その後、aclocal、autoheader、autoconf、automake -a -c、./configureの順でコマンドを実行し、make && make installでビルドとインストールを完了させました。最終的に、フルスクリーンモードのバグはあったものの、Extreme Tux Racerをビルドして遊ぶことに成功しました。

GitHubで編集を提案

Discussion