はじめに

オルトプラスの平野と申します。釣りとキャンプ、ゲーム(アナログのカードゲームやボドゲも含めて)が好きな、アウトドア派かインドア派かよくわからないキャラを担当しております。よろしくお願いします。

本投稿では、Unityでのリソース管理を 従来の Resourcesや AssetBundlesから Addressable Asset Systemへ移行する手順と、その際に引っ掛かりそうなポイント等を、私が実際に移行作業で遭遇したものを中心に書いていこうと思います。

なお、本投稿は前編と後編に分けております。

こんな人向け

Addressable Asset System とは

アセットの管理とロードに関するシステムです。これにより、アプリケーションのパフォーマンスを向上させ、メモリの使用を最適化することができます。主な特徴は以下の通りです:

  1. アセットの分割: アセットを小さな部分に分割して、必要なときにロードすることができます。
  2. 非同期ロード: ユーザーによる待ち時間を最小限に抑えるために、アセットを非同期でロードします。
  3. バージョン管理: アセットのバージョンを管理し、最新のバージョンを自動的にロードします。
  4. メモリ管理: 使用されていないアセットを自動的に解放し、メモリの使用を最適化します。

これにより、アプリケーションのパフォーマンスが向上し、ユーザーエクスペリエンスが改善されます。

<aside> 💡

公式サイト: Addressables システムの概要 | Addressables | 1.20.5

</aside>

Addressables? Addressable Assets? Addressable Asset System? ってあるけど結局どれが正しいの?

って、最初戸惑ってしまう方は意外と多いようです。

意味の微妙なニュアンスの違いはありますが、どれも正しいです。

カタカナの書き方はいろいろありますが、Addressable(s) →「アドレスアブル(ズ)」で良さそうです。また、なんとなく略すにも、これ!! というのがない様です。発音時は人によって多少ブレますが、あえて細かくはやめます。大切なのはメンバー間で伝わることなので、事前に定義して統一しておけば良いでしょう。

なので、本投稿では下記で統一しておきます。