Happy My Life

日常とか技術とか

「UE4Gameバイナリがありません」を解決する

タイトルだけ見ても「なんのこっちゃ?」と思う人がいるだろうし、まずその経緯を解説する。ここではUE4.9タグから取得したソースコードをビルドすることを前提に話を進めていく(UE4.8のソースコードでも同じなのだが)。

最初に言っておくが「○○したらOK!」といった明確な解決方法はよく分かっていない(追求することはできるのだが、確認にとても時間がかかるので諦めた)。なので、この方針でビルドしたら解決した、というメモとして残しておく。

UE4のソースコードを、いつものように「Development Editor」&「Win64」でビルドしてUE4Editorを起動し、Androidのパッケージを作成しようとすると、次のダイアログが表示されて、Android向けのパッケージ(apkファイル)が生成されない、という事象が発生する。もちろん、EpicGamesが配付しているUE4.8ではこのようなダイアログは表示されない。これは、あたりまえだが。

dialog

なんでだろう?と思ってググったりいろいろ試したりして、ようやく解決方法が分かった。

UE4Gameとは

ググってみると、ゲームのランチャー(起動ソフトウェア)に該当するもののようだ。つまり、UE4Gameがないとゲームが起動できない。UE4GameはAndroid、iOS、HTML5向けのゲーム起動では必要だが、PC(WinやMac)には不要、ということらしい。

解決方法

UE4Gameは「Development」「Shipping」など、後ろにEditorやClientなどが付かないコンフィギュレーションでビルドすると生成される。ただし、UnrealEditorのビルド設定の組み合わせは多数設定できるため、必要そうなコンフィギュレーションの組み合わせをUnrealVSで設定してビルドした後、VisualStudioからDevelopment Editor&Win64でビルドしたUnreal Editorを起動し、そこからAndroidのパッケージが作成できた。ビルドした組み合わせは次の通り。

batch-builder

HTML5やiOSについては、先の設定でAndroidと書かれている箇所を、それぞれのプラットフォームに置き換えたらOK、のはず。