SkillAgentSearch skills...

SmartAddresser

Automate Addressing, Labeling, and Version Control for Unity's Addressable Asset System.

Install / Use

/learn @CyberAgentGameEntertainment/SmartAddresser
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

<p align="center"> <img width=500 src="Documentation/Images/logo_white.png#gh-dark-mode-only" alt="Smart Addresser"> <img width=500 src="Documentation/Images/logo_color.png#gh-light-mode-only" alt="Smart Addresser"> </p>

Smart Addresser: Automate Addressing, Labeling, and Version Control for Addressables

license license license

Docs (English, 日本語)

Smart Addresser is a tool for automating the assigning of addresses and labels in the Unity's Addressable Asset System. You can assign addresses and labels easily using GUI tool. And it also has the version management feature to exclude pre-release assets from the build.

<p align="center"> <img width="80%" src="Documentation/Images/smart_addresser_en.gif" alt="ConceptMovie"> </p>

Table of Contents

<!-- START doctoc generated TOC please keep comment here to allow auto update --> <!-- DON'T EDIT THIS SECTION, INSTEAD RE-RUN doctoc TO UPDATE --> <details> <summary>Details</summary> </details> <!-- END doctoc generated TOC please keep comment here to allow auto update -->

Concept

In the Addressable Asset System, you can register addresses by dragging and dropping assets into the Addressables Group Window as shown blow.

<p align="center"> <img width="80%" src="Documentation/Images/concept_01.gif" alt="Concept"> </p>

However, in reality, it is difficult to manually register all assets. Smart Addresser is a tool to automate this task. For example, you can easily assign addresses by setting up the rules like the following.

  • Assign addresses to all Prefabs in the specified folder.
  • Assign addresses to all assets in the folder named "Addressables".
  • Assign addresses to all assets with a path matching the specified regular expression.

You can freely create rules using the GUI tool as follows.

<p align="center"> <img width="80%" src="Documentation/Images/concept_02.png" alt="GUI Tool"> </p>

And Smart Addresser also has the version management feature. You can exclude pre-release assets from the build by setting the version number of the asset.

There is also a tool that allows you to check and validate the actual addresses, labels, and versions that are assigned by the rules.

<p align="center"> <img width="80%" src="Documentation/Images/concept_03.png" alt="Layout Viewer"> </p>

You can also use the CLI to incorporate the addressing and validation process into the CI/CD process.

Setup

Requirement

  • Unity 2020.3 or higher.
  • Addressables is installed.

Install

  1. Open the Package Manager from Window > Package Manager
  2. "+" button > Add package from git URL
  3. Enter the following
    • https://github.com/CyberAgentGameEntertainment/SmartAddresser.git?path=/Assets/SmartAddresser
<p align="center"> <img width="80%" src="Documentation/Images/setup_01.png" alt="Package Manager"> </p>

Or, open Packages/manifest.json and add the following to the dependencies block.

{
    "dependencies": {
      "jp.co.cyberagent.smartaddresser": "https://github.com/CyberAgentGameEntertainment/SmartAddresser.git?path=/Assets/SmartAddresser"
    }
}

If you want to set the target version, write as follows.

  • https://github.com/CyberAgentGameEntertainment/SmartAddresser.git?path=/Assets/SmartAddresser#1.0.0

To update the version, rewrite the version as described above.
If you don't want to specify a version, you can also update the version by editing the hash of this library in the package-lock.json file.

{
  "dependencies": {
      "jp.co.cyberagent.smartaddresser": {
      "version": "https://github.com/CyberAgentGameEntertainment/SmartAddresser.git?path=/Assets/SmartAddresser",
      "depth": 0,
      "source": "git",
      "dependencies": {},
      "hash": "..."
    }
  }
}

Set up rules to assign addresses

Set up Addressable Asset System

Note
If you already have set up Addressable Asset System, skip this section.

Before you use Smart Addresser, you need to set up the Addressable Asset System. If not, set up it as follows.

  • Open Window > Asset Management > Addressables > Groups.
  • If you see a message that Addressable has not been initialized, follow the instructions to initialize it.
  • If necessary, create a new Addressable Asset Group to be controlled by Smart Addresser from Create > Groups.

Create an asset to store the data

Next you need to create an asset to store the data for Smart Addresser. Create Layout Data Asset from Assets > Create > Smart Addresser > Layout Rule Data.

<p align="center"> <img width="80%" src="Documentation/Images/setup_rules_01.png" alt="Create Layout Rule Data"> </p>

Rules for addressing are stored in this asset.

You can create multiple assets in the same project. And you can create it in any folder under the Editor folder.

Next, double-click the asset or click the Open Editor button in the Inspector to open the Layout Rule Editor.

<p align="center"> <img width="80%" src="Documentation/Images/setup_rules_02.png" alt="Layout Rule Editor"> </p>

Create Address Rules

In the Address Rules tab of the Layout Rule Editor, you can set the assets and their addresses to be registered in each Addressable Asset Group (called Address Rule) in the project.

The Groups column displays a list of Addressable Asset Groups in your project. If you check the checkbox in the Control column, Smart Addresser will control the Addressable Asset Group.

<p align="center"> <img width="80%" src="Documentation/Images/setup_rules_03.png" alt="Address Rules Editor"> </p>

Next, select a item and set up the rules for that Addressable Asset Group in the panel on right.

In the Asset Groups tab you can specify which assets to target. For example, to target "all assets in the folder named Characters", click the + button and select the Object Filter, and set the Characters folder to the Object property, as shown below.

<p align="center"> <img width="80%" src="Documentation/Images/setup_rules_04.png" alt="Asset Groups"> </p>

See Asset Filter of Asset Group for details on filters other than Object Filter. You can also set multiple filters, and they will be combined with AND. If you want to use OR, click Add Asset Group to add another Asset Group.

In the Address Provider tab, you can specify the address to be assigned to the assets. For example, if you want to assign the file name without extension as the address, set File Name Without Extensions to the Source as shown below.

<p align="center"> <img width="80%" src="Documentation/Images/setup_rules_05.png" alt="Address Provider"> </p>

See Address Provider for details on address providers.

Create Label Rules

Note
If you don't use labels, skip this section.

In the Label Rules tab of the Layout Rule Editor, you can set the rules to assign labels to assets (called Label Rules).

First, click the + button at the top left to add new Label Rule. You can rename it by clicking the item.

<p align="center"> <img width="80%" src="Documentation/Images/setup_rules_06.png" alt="Label Rules Editor"> </p>

Next, select a item and set up the rules for that Label Rule in the right panel.

In the Asset Groups tab y

Related Skills

View on GitHub
GitHub Stars584
CategoryDevelopment
Updated13d ago
Forks40

Languages

C#

Security Score

100/100

Audited on Mar 17, 2026

No findings