Describes the current asynchronous loading phase of a Loadable{T} after Loadable<T0>.Load or Loadable<T0>.LoadAsync is used.
Query Loadable<T0>.Status to drive UI or to assert that a load finished before reading Loadable<T0>.Target. LoadableStatus.Failed indicates the asynchronous load completed without a usable object. This often occurs due to missing built content.
using System.Threading.Tasks; using Unity.Loading; using UnityEngine;
namespace BuildDocExamples { public class Loadable_LoadAndReleaseExample { public class HatPicker : MonoBehaviour { public Loadable<GameObject> hatPrefab;
public void EquipDefault() { hatPrefab.Load(); Instantiate(hatPrefab.Target); } }
// Example showing async loading with status check public async Task LoadAsyncExample(Loadable<Texture2D> myLoadable) { await myLoadable.LoadAsync(); if (myLoadable.Status == LoadableStatus.Loaded) { // Use myLoadable.Target Debug.Log($"Loaded: {myLoadable.Target.name}"); } else { Debug.LogWarning($"Texture2D myLoadable failed to load. Loadable : {myLoadable.ToString()}"); } myLoadable.Release(); } } }