このガイドでは、Play Asset Delivery を Unity プロジェクトに組み込む方法について説明します。
概要
Unity AssetBundle ファイルにはシリアル化されたアセットが含まれており、アプリの実行中に Unity エンジンに読み込むことができます。これらのファイルはプラットフォーム固有(Android 用など)に作成され、アセットパックと組み合わせて使用できます。ほとんどの場合、1 つの AssetBundle ファイルが 1 つのアセットパックにパッケージ化され、そのアセットパックは AssetBundle と同じ名前を使用します。アセットパックをより柔軟に作成するには、API を使用してアセットパックを設定します。
ランタイムに、Unity の Play Asset Delivery クラスを使用して、アセットパックにパッケージ化された AssetBundle を取得してください。
前提条件
UI を使用して AssetBundle を設定する
アセットパック内の各 AssetBundle を設定します。
- [Google] > [Android App Bundle] > [Asset Delivery Settings] を選択します。
- AssetBundle ファイルを直接含むフォルダを選択するために、[Add Folder] をクリックします。
バンドルごとに [Delivery Mode] を [Install Time]、[Fast Follow]、[On Demand] のいずれかに変更します。エラーや依存関係を解決し、ウィンドウを閉じます。
[Google] > [Build Android App Bundle] を選択して App Bundle をビルドします。
(省略可)さまざまなテクスチャ圧縮形式をサポートするように App Bundle を構成します。
API を使用してアセットパックを設定する
自動ビルドシステムの一部として実行できるエディタ スクリプトを使用して Asset Delivery を設定できます。
AssetPackConfig
クラスを使用して、Android App Bundle ビルドに含めるアセットと、アセットの配信モードを定義します。これらのアセットパックに AssetBundle を含める必要はありません。
public void ConfigureAssetPacks { // Creates an AssetPackConfig with a single asset pack, named // examplePackName, containing all the files in path/to/exampleFolder. var assetPackConfig = new AssetPackConfig(); assetPackConfig.AddAssetsFolder("examplePackName", "path/to/exampleFolder", AssetPackDeliveryMode.OnDemand); // Configures the build system to use the newly created assetPackConfig when // calling Google > Build and Run or Google > Build Android App Bundle. AssetPackConfigSerializer.SaveConfig(assetPackConfig); // Alternatively, use BundleTool.BuildBundle to build an App Bundle from script. BuildBundle(new buildPlayerOptions(), assetPackConfig); }
Bundletool
クラスの BuildBundle
静的メソッドを使用し、BuildPlayerOptions と AssetPackConfig
に応じて、Android App Bundle とアセットパックを生成します。
次のステップ
Unity を使用して、Play Asset Delivery をゲームまたはアプリのコードに統合します。