Android プロジェクトのパッケージ化

最終的な Android プロジェクトのパッケージ化について説明します。

Windows
MacOS
Linux
Prerequisite Topics

This page assumes you have prior knowledge of the following topics. Please read them before proceeding.

以下の操作ガイドでは、Android デバイスへデプロイするための Unreal Engine 4 全体をパッケージ化する方法について説明します。UE で Android プロジェクトを簡単にパッケージ化し、便利なファイルに出力して、スマートフォンでテストするためにプロジェクトをインストール / アンインストールすることができます。

基本設定

開始する前に、以下の要件およびプロジェクト設定を満たしていることが必要です。

  • Android Studio をコンピュータに設定する必要があります。「Android SDK と NDK をインストールする 」を参照してください。

  • 使用する Android デバイスの Development ModeUSB Debugging を有効にします。Android デバイスを開発用に設定する を参照してください。

  • Android 用に プロジェクト設定 を設定し Android SDK ライセンス契約に同意する必要があります。Android クイック スタート を参照してください。

まだプロジェクトを作成していない場合は、Third-Person Template[Target Hardware][Mobile/Tablet]、また品質を [Scalable 3D or 2D] に設定してプロジェクトを作成してください。

1.プロジェクトをパッケージ化する

このセクションでは、プロジェクトを .APK ファイルとしてパッケージ化します。

このゲームは現在テスト中なので [Development] にパッケージ化しますが、ゲームが完成したら [Package Project] メニューの [Build Configurations] オプションにカーソルを当てれば [Shipping] へのパッケージ化が可能になります。

  1. [File] メニューで [Package Project] > [Android] を選択し、パッケージ化したいテクスチャ フォーマットを選びます。このサンプルでは、すべてのデバイスがサポートしている Android ETC1 を使うことにします。

    クリックして画像を拡大

    どのハードウェアで実行するかによって、サポートするテクスチャ フォーマットはデバイスごとに異なります。各種フォーマットの詳細は Android 開発リファレンス をご覧ください。

    形式

    説明

    ETC1

    すべての Android ベース デバイスでサポートされますが、アルファ テクスチャの圧縮はできません (圧縮されないまま格納されます)。アルファをうまく圧縮するには、RGB および別々のアルファ テクスチャの使用を推奨します。

    ETC1a

    アルファ値を持たないテクスチャに ETC1、アルファ テクスチャに ETC2 を使用します。デバイスが ETC2 をサポートしていない場合、アルファ テクスチャは実行時に RGBA に展開されます。RGBA は ETC1 と ETC2 の両方で使用できますが、アルファ値を含まないテクスチャに ETC1 を使用した場合、ETC2 の場合ほど高い品質は得られません。

    ETC2

    すべての OpenGL 3.x クラス デバイスでサポートされ、アルファ テクスチャの圧縮もサポートします。

    ATC

    Qualcomm Adreno GPU でサポートされ、アルファ テクスチャの圧縮もサポートします。

    DXT

    Nvidia Tegra GPU でサポートされ、アルファ テクスチャの圧縮もサポートします。

    PVRTC

    PowerVR GPU でサポートされ、アルファ テクスチャの圧縮もサポートします。

    ASTC

    最新のテクスチャ圧縮フォーマットで、ブロック サイズを指定して細かい品質調整を可能にします。アルファ圧縮をサポートします。現時点では使用できるデバイスは限られています。

  2. パッケージ化したゲームの保存場所を聞かれます。保存場所のデフォルトはプロジェクト フォルダです。新規フォルダを作成し、「Android_Builds」 と名前を付けます。

    クリックして画像を拡大

  3. ゲームのパッケージ化処理中は、処理の進捗状況が右下隅に表示されます。

    package_toast.png

  4. パッケージ化が正常に終了すると、パッケージ化の完了メッセージがエディタの右下隅に表示されます。

    Packageing_Completed.png

  5. ステップ 2 で作成したフォルダを開くと、、パッケージ処理中に指定したテクスチャ タイプ用の名前をつけた新規フォルダが入っています。この例では、そのフォルダ名は「Android_DXT」です。

    クリックして画像を拡大

2. パッケージ化したプロジェクトをデバイスへデプロイする

プロジェクトを .APK にパッケージ化したので、このセクションではビルドをデバイスにデプロイする方法を説明します。

  1. Android デバイスを USB ケーブルで PC に接続します。プロンプトが表示されたら、PC にファイル変更を許可します。

  2. Android_ETC1 フォルダを開いて「Install[ProjectName]Development.bat」 バッチ ファイルを ダブル クリック して、Android デバイス上にプロジェクトをインストールします

クリックして画像を拡大

実行時にデバイスが USB で接続されていないと、.BAT ファイルは何も処理しません。

  1. Android デバイスを USB ケーブルで PC に接続します。プロンプトが表示されたら、PC にファイル変更を許可します。

  2. 「Android_ETC1」フォルダを開いて Install[ProjectName]Development_armv7-es3.command ファイルを ダブル クリック して、Android デバイス上にプロジェクトをインストールします。

    実行時にデバイスが USB で接続されていないと、.command ファイルは何も処理しません。

  1. Android デバイスを USB ケーブルで PC に接続します。プロンプトが表示されたら、PC にファイル変更を許可します。

  2. 「Android_ETC1」 フォルダを開いて、パッケージ化プロセスで作成したファイルを確認します。

    LinuxAndroid_Step37.png

    インストール および アンインストール シェル スクリプト (.sh) に加え、ETC1 圧縮スキームをサポートする Android デバイスにプロジェクトをインストールするのに必要なすべてのファイルを含んだ Android アプリケーション パッケージ (.apk) があります。

  3. フォルダ内を右クリックし、[Open in Terminal (ターミナルで開く)] を選択して、このフォルダの場所からターミナルを開きます。

    LinuxAndroid_Step38.png

  4. ターミナルに「./Install_LinuxAndroidProject_Development-arm64.es2.sh」と入力して、Android デバイスにプロジェクトをインストールします。

    クリックして画像を拡大

    シェル スクリプトの実行で問題が発生した場合は、ターミナルに「adb devices」と入力して、デバイスがコンピュータに接続しているかどうかを確認します。

  5. インストール プロセス中、シェル スクリプトによってターミナルに次の出力が表示されます。

    クリックして画像を拡大

    シェル スクリプトによるインストール処理が完了すると、「Installation successful」 メッセージが表示されます。

最終結果

この操作ガイドを終了すると、プロジェクトは Android デバイス上に以下の画像のように表示されます。

さらに、.APK ファイルおよび関連するヘルパをテストのために他のデバイスへデプロイします。

Select Skin
Light
Dark

Welcome to the new Unreal Engine 4 Documentation site!

We're working on lots of new features including a feedback system so you can tell us how we are doing. It's not quite ready for use in the wild yet, so head over to the Documentation Feedback forum to tell us about this page or call out any issues you are encountering in the meantime.

We'll be sure to let you know when the new system is up and running.

Post Feedback