Skip to content

Addressables Integration

Requirements: Addressables 1.19.0+ (com.unity.addressables)

Enables async asset loading for large localization projects.

AddressableAssetTable

Create: Right-click → Create → KitStack → Lexis → Addressable Asset Table

Configure localized assets with Addressables references for each locale.

AddressableLocalization (Static Facade)

csharp
// Async loading (with UniTask)
Sprite sprite = await AddressableLocalization.GetAssetAsync<Sprite>("flags", "country");

// Async loading (Unity 2023.1+)
Sprite sprite = await AddressableLocalization.GetAssetAsync<Sprite>("flags", "country");

// Callback-based (all Unity versions)
AddressableLocalization.GetAssetAsync<Sprite>("flags", "country",
    sprite => image.sprite = sprite,
    error => Debug.LogError(error));

// Get asset reference
AssetReference reference = AddressableLocalization.GetAssetReference<Sprite>("flags", "country");

// Handle-based for progress tracking
AsyncOperationHandle<Sprite> handle = AddressableLocalization.GetAssetHandle<Sprite>("flags", "country");

// Table registration
AddressableLocalization.RegisterTablesFromSettings();
AddressableLocalization.RegisterTable(customTable);
AddressableLocalization.UnregisterTable("tableId");

// Memory management
AddressableLocalization.Release(sprite);
AddressableLocalization.ReleaseAll();

AddressableAssetPreloader

Preload assets during loading screens.

csharp
// Preload entire locale with progress
await AddressableAssetPreloader.PreloadLocaleAsync("en", progress);

// Preload specific table
await AddressableAssetPreloader.PreloadTableAsync(table, "en", progress);

// Check preload status
bool isPreloaded = AddressableAssetPreloader.IsLocalePreloaded("en");

// Release preloaded assets
AddressableAssetPreloader.ReleaseLocale("en");
AddressableAssetPreloader.ReleasePreloaded();

Events:

csharp
AddressableAssetPreloader.OnPreloadStarted += (locale, count) => { };
AddressableAssetPreloader.OnAssetPreloaded += (key, asset) => { };
AddressableAssetPreloader.OnPreloadCompleted += (locale, success, failed) => { };

Addressable Components

Auto-loading components with fallback support:

ComponentTarget
AddressableLocalizedSpriteComponentUI Image
AddressableLocalizedTextureComponentRenderer
AddressableLocalizedAudioComponentAudioSource
AddressableLocalizedPrefabComponentInstantiate prefabs

Features:

  • Auto-load on enable
  • Loading/fallback sprite display
  • Auto-release on disable

Professional Unity Development Tools