LinuxでのオープンソースGTAVCとGTAIIIの構築

画像



おそらく、GTAをプレイしない(または少なくともそれについて聞いたことがない)ような人はここにはいないでしょう。シリーズの最初の3Dバージョンは約20年前にリリースされました。GTAIIIでした。GTA:バイスシティは1年後に登場しました。それにもかかわらず、これらのゲームはまだプレイされるだけでなく、MODによって作成されます。これらのゲームは多くのプラットフォームに移植されていますが、残念ながらLinuxは(最近まで)バイパスされていました。Linuxをプレイする唯一の方法はワインでした。しかし最近、すべてが変わりました。



ニュースが私の目に留まりました- 開発者はGTAIIIとViceCityのリバースエンジニアリングを終了し、さまざまなプラットフォーム用のポートをリリースしました



そして、私はソースに関連するすべて(リーク、発見など)を追跡し、ソースからソフトウェアをビルドすることも好きなので、もちろんこれを無視することはできませんでした。ニュースから、熱狂的なファンがGTA IIIとGTA:VCのソースコードを公開していることに気づきました。私の喜びには限りがありませんでした。詳細については、すぐに githubにアクセスしました。



主な改善点(マイアミに関して):



  • 多くのマイナーおよびメジャーバグを修正しました。
  • ユーザーファイル(保存と設定)がGTAルートディレクトリに保存されるようになりました。
  • 設定はreVC.iniファイルに保存されます(元々はgta_vc.setにありました)。
  • デバッグメニューを追加しました(CTRL + Mで利用可能)。
  • 無料カメラ(デバッグカメラ)。CTRL + B-オン/オフ。有効にすると、カメラをマップ全体で自由に移動できます。
  • 島の間のロード画面を削除しました。
  • そして、他のプラットフォームの修正を含む、他のいくつかの修正/改善。


注:これらのパラメーターは、core /config.hファイルで構成でき ます一部のパラメーターはゲーム内で(デバッグメニューを使用して)変更できますが、残りのパラメーターは再構築が必要になります。



最も興味深い、つまりマイアミ(GTA:VC)の組み立てに移りましょう。



必要なもの:



  • Linuxディストリビューション(Ubuntu、Debian、Mintなど)。
  • VCゲーム配布キットの元のファイル(アセット)(GTA IIIビルドの場合、それに応じてGTA IIIファイルが必要になります)。
  • GCC。
  • 一部のライブラリとヘッダーファイル。


Linux Mint 19.3をOSとして使用しています(Ubuntu 18.04 LTSに基づく)。次のようにgccコンパイラをインストールできます(インストールされていない場合)。



sudo apt install build-essential
      
      





必要なライブラリのインストール:



sudo apt install libopenal-dev libglew-dev libglfw3-dev libsndfile1-dev libmpg123-dev
      
      





ここで停止し、より詳細に検討します。昨日、不注意によるコンパイルの問題の解決策を探すのに30分を費やしました。Ubuntu 18.04リポジトリには3.2があるのに対し、glfwライブラリのバージョンは少なくとも3.3である必要があることがGitHubに明確に記載されています。したがって、Ubuntu 18.04でビルドされた配布キットがある場合(またはリポジトリ内のglfwライブラリのバージョンが3.3未満の場合)、このライブラリはソースからコンパイルする必要があります。しかし、ここでは難しいことは何もありません。アーカイブのダウンロード github.com/glfw/glfw/releases/download/3.3.2/glfw-3.3.2.zip



任意のフォルダーに解凍します。解凍されたフォルダーに移動し、次のコマンドを実行します。



mkdir glfw-build
cd glfw-build
cmake -DBUILD_SHARED_LIBS=ON ../
make -j2
sudo checkinstall
      
      





必要なバージョンのライブラリがインストールされます。次に、リポジトリのクローンを作成します。



git clone --recursive -b miami https://github.com/GTAmodding/re3.git reVC
      
      





長くはかからないでしょう。クローン作成後、reVCフォルダーのサイズは約120MBです(そのうち70MBは.gitフォルダーです)。



次に、reVCフォルダーに移動し、premake5Linuxを起動します。



./premake5Linux --with-librw gmake2
      
      





ビルドファイルの生成には数秒かかります。

注:arm / arm64アーキテクチャを使用する場合は、ソースからpremake5Linuxユーティリティをビルドしてから、上記のパラメータを使用して実行する必要があります。



今度はアセンブリ自体。次の構成は、ビルドのために用意されています



- debug_linux-のx86-librw_gl3_glfw-OAL

- debug_linux-AMD64-librw_gl3_glfw-OAL

- debug_linuxアーム-librw_gl3_glfw-OAL

- debug_linux-arm64-librw_gllf3_release_linux-release_lf

-release-OLF-release_llf-release_ref_release_ref_release_llf

- ole -librw_gl3_glfw-oal --release_linux

-arm-librw_gl3_glfw-oal

--release_linux-arm64-librw_gl3_glfw-oal



名前からすべてが明らかだと思います。主なことは、amd64とarm64を混同しないことです(昨夜は眠いのを見落としていたので、なぜアセンブリが発生しないのか理解できませんでした)。



reVC / buildディレクトリに移動し、設定でmakeを実行します。 amd64のデバッグバージョンの場合、次のことを行う必要があります。



make config=debug_linux-amd64-librw_gl3_glfw-oal
      
      





コンパイルは十分に高速です。私の古いラップトップ(Asus X55A、Pentium B970 2x2.3 GHz、4 GBのメモリ)では、デバッグバージョンのビルドに2分かかりました。 10秒(出力ファイル= 30.4 MB)、リリース-4分。 44秒(ファイルサイズ= 43.8MB)。私自身の経験から、多くの場合、それは通常反対であると言います。



コンパイルがエラーなしで渡された場合、reVCバイナリはreVC / bin / your_configuration / Debug_or_Release /フォルダーにあります。



GTA:VCを含む元のフォルダーをどこかにコピーします(必要に応じて、ルートからすべてのファイルを削除できます。ファイルは必要ありません)。次に、reVCバイナリをゲームフォルダにコピーします。理論的には、ゲームはすでに起動でき、プレイすることもできます。ただし、一部のメニュー項目のテキストは正しく表示されません。



画像



これを修正するには、置換フォルダーをreVC / gamefilesからゲームフォルダーにコピーします。ただし、この場合、ゲームは英語になります。



次に、デバッグメニューに移動します。デバッグメニュー



画像



を有効または無効にするには、CTRL + Mを押します。



  • カム-カメラに関連するすべて。
  • チート-さまざまなチート。
  • デバッグ-さまざまなデバッグ情報、プレーヤーの位置などを表示します。
  • デバッグレンダリング-さまざまなオブジェクト、車両、建物、歩行者を非表示または表示したり、車両や歩行者の経路を表示したりできます。
  • ゲーム-任意の場所へのテレポート(最初にマップにマークを付ける必要があります)。また、絶対にどんなミッションでも開始できます。
  • 粒子-それが何であるかわかりません。
  • レンダリング-いくつかの修正、fps設定、グラフィック設定..。
  • スポーン-スポーンビークル。
  • 時間と天気-時間と天気を設定します。


GTA IIIの構築は、リポジトリのクローンを作成することを除いて、違いはありません。



git clone --recursive https://github.com/GTAmodding/re3.git
      
      





modsについて:テクスチャ、スクリプト、モデルが機能するはずです。しかし、dll / asi、CLEOは機能しません。これらのmodの一部の機能はすでにre3に実装されており、一部はconfig.hファイルで構成できます。



関連リンク:



github.com/GTAmodding/re3 Mac、Linux、Windows

用のGTA III

ReadyreVCバイナリの 組み立て手順Mac、Linux、Windows用の

Ready re3バイナリ VisualStudio

Code



Lifehackでリポジトリを表示する:githubリンクでgithubを変更した場合github1s.comの.comの場合、リポジトリは便利なVisual StudioCodeで表示できます。



All Articles