はじめに
前回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を設定することで、生成したアセットバンドルを利用した動作確認をすることができます。

