iPX社員によるブログ

iPX社員が"社の動向"から"自身の知見や趣味"、"セミナーなどのおすすめ情報"に至るまで幅広い話題を投下していくブログ。社の雰囲気を感じ取っていただけたら幸いです。

Linux (Ubuntu) 環境で AirSim を利用する方法

こんにちわ、 iPX のコクブンです。
Linux (Ubuntu) 環境で AirSim を利用する場合、残念ながら現時点では公式からビルド済バイナリが提供されていないため、 GitHub よりソースコードを入手して自分でビルドを行う必要があります。
今回は、 Ubuntu 環境での AirSim ビルド手順についてご紹介させていただきます。
※ AirSim の概要についてお知りになりたい方は概要紹介記事をご参照ください。
※ AirSim の最新版を Windows 環境で利用したい方は Windows 環境でのビルド方法紹介記事をご参照ください。

※ 2018/05/11 追記
本記事を投稿後、 AirSim のドキュメントが更新され、サポートされる各ツールのバージョンが変更されました。

Unreal Engine
4.17 → 4.18
CMake
記事中では特に明記していませんでしたが、 ver 3.9.0 以上が必要になります

本記事中の上記ツールのバージョンについては、適宜読み替えてください。

前提条件

現時点で、 Linux 向けの AirSim は Ubuntu 16.04 LTS (Long Term Support) が推奨環境となっています*1

事前準備

Ubuntu 環境で AirSim をソースコードからビルドして利用する場合、事前に以下の作業を行っておく必要があります。

順に見ていきましょう。

Epic Games へのアカウント登録

Epic Games アカウントの登録については 前回の Windows 環境向けの記事をご参照ください。

GitHub アカウントの作成


Unreal Engine 4 のソースコードを取得するためには GitHub アカウントが必要となります。
Git Hub へアクセスし、 "Sign up for GitHub" から新規アカウントを作成してください*2

Epic Games アカウントへの GitHub アカウント紐づけ


Epic Games のアカウント情報ページを表示し*3、「接続済みアカウント」タブ内の「 GITHUB 」欄に先程作成した GitHub のアカウント名を入力して「変更を保存」をクリックしてください。

Epic Games チームへの参加

Epic Games アカウントへの GitHub アカウント紐づけを行った後、対象の GitHub アカウントで GitHub へログインして Epic Games の GitHub ページへアクセスすると Epic Games チームへの invitation が表示されますので、 Join してください。
これにより Epic Games チーム内の Private リポジトリ*4が参照可能になります。

Mono xBuild の取得

Unreal Engine のビルドには xBuild (mono-xbuild) が必要となります。
mono-xbuild は apt でインストール可能なので、インストールしておきます。

sudo apt install mono-xbuild

Unreal Engine のソース入手とビルド

事前準備が整ったら、 Unreal EngineソースコードGitHub よりダウンロードします。
※現時点で AirSim がサポートしているのは Unreal 4.17 のみなので、 4.17 を指定して git clone してください*5

git clone -b 4.17 https://github.com/EpicGames/UnrealEngine.git

取得が完了したらビルドを行います。

./Setup.sh
./GenerateProjectFiles.sh
make

AirSim のソース入手とビルド

Unreal のビルドが完了したら、いよいよ AirSim のソース取得に移ります。
AirSim のソースコードWindows と同様に GitHub から入手可能です。

git clone https://github.com/Microsoft/AirSim.git

取得が完了したらビルドしてください。

cd AirSim
./setup.sh
./build.sh

サンプル環境 (Blocks) の実行

Windows と同様に、 Ubuntu 環境でも サンプル (Blocks) を起動してみましょう。

Unreal Editor の起動


Unreal Editor は git clone したファイル内にある Engine/Binaries/Linux/UE4Editor で起動します。

cd path-to-unreal_engine
cd Engine/Binaries/Linux/
./UE4Editor

OpenGL 3.x 環境で実行する場合は、 UE4Editor に opengl3 オプション (-opengl3) をつけて実行してください。

Blocks の読込


Projects タブで "Browse" ボタンをクリックして、 airsim-folder/Unreal/Environments/Blocks/Blocks.uproject ファイルを読み込みます。


※読み込み時にバージョンが違う旨のダイアログが表示された場合は、左下の "More Options" → "Convert in-place" を選択してコンバージョン処理を実行してください。

コンバートが無事完了すると、 Unreal Editor が起動して Blocks サンプルが利用可能になります。

*1:他のディストリビューションOSX でも動作する可能性はありますが、提供元に於いて未テストのため、全て自己責任でお願いします。

*2:既に GitHub のアカウントを所持している方は既存のアカウントを利用することが可能です。

*3:サインインを求められたら先程作成した Epic Games アカウントでサインインしてください。

*4:Unreal EngineソースコードEpic Games チームの Private リポジトリで管理されています。

*5:git clone 時にユーザログインを求められた場合は先の手順で Epic Games アカウントに紐づけた GitHub アカウントでログインしてください。