はじめに
前回Addressable Asset System
の基本操作についての記事を書いたのですが、今回はサーバー上(ロリポップ)にbundle
を配置し、それをダウンロード&利用してみたいと思います。
環境
Unity 2020.3.18f1
Addressable v1.18.19
新規グループ作成
(初期設定では)一つのGroup
が一つのBundle
になるので、リモートに配置するGroup
を作成してみます。
メニューバーよりWindow -> Asset Management -> Addressables -> Group
を押してAddressable Gruops Window
を開きます。
右クリックを押し、Create New Group -> Packed Assets
より新規Group
を作成できます。


Addressable Asset Groupの設定をリモートに変更する
先程作成したグループをクリックすると、インスペクターにそれに対応したAddressable Asset Group
の設定が表示されます。
そこのBuild Path
をLocalBuildPath -> RemoteBuildPath
に、Load Path
をLocalLoadPath -> RemoteLoadPath
に変更します。

リモートカタログを生成する
メニューバーのWindows -> Asset Management -> Addressables -> Settings
からAddressableAssetSettings
を開き、以下の二つを行います。
Catalog/Player Version Override
に0
と記入Build Remote Catalog
にチェック
Addressable Asset Settings | Addressables | 1.18.19

catalog
とはアセットのアドレスと物理的な場所の対応付けの情報を記述したファイルになります。
Settings related to the Addressables Catalog, which maps the address of an asset to its physical location.
Addressable Asset Settings | Addressables | 1.18.19
またPlayer Version Override
を記入しないと、ビルドした際のタイムスタンプを利用したファイル名になるそうです。バージョンを指定しておけば、同じファイルなら上書きになるので多少使い勝手が上がります。
アセットバンドルをビルドする
メニューバーのWindows -> Asset Management -> Addressables -> Group
からAddressable Gruops Window
を開き、アセットバンドルのビルドを行います。

無事にビルドが成功すると、プロジェクト名/ServerData/
の中に.bundle
・catalog.hash
・catalog.json
が生成されているはずです。(RemoteBuildPath
で設定した場所。デフォルトはServerData/[BuildTarget]
)

ロリポップにアップロード
AWSのS3でも良かったのですが、そういえば最近ロリポップを契約したなと思いロリポップFTP
を用いてアセットバンドルをアップロードして試してみました。
やり方は簡単でロリポップFTPで.bundle
, catalog
をアップロードするだけですね。

Addressable ProfilesよりRemoteBuildPathを設定する
デフォルトではhttp://localhost/[BuildTarget]
になっているのですが、サーバーからダウンロードするためにURL
に変更する必要があります。
メニューバーよりWindow -> Asset Management -> Addressables -> Profiles
を選択し、Addressables Profiles Window
を開きます。
あとはRemoteLoadPath
をアセットバンドルとカタログをアップロードしたURLに変更すればOKです。

エディタ上で動作確認してみる
Addressable Groups Window
よりPlay Mode Scripts
からUse Existing Build
を設定することで、生成したアセットバンドルを利用した動作確認をすることができます。

