Class AssetReference
Reference to an addressable asset. This can be used in script to provide fields that can be easily set in the editor and loaded dynamically at runtime. To determine if the reference is set, use RuntimeKeyIsValid().
Inherited Members
Namespace: UnityEngine.AddressableAssets
Syntax
[Serializable]
public class AssetReference : IKeyEvaluator
Constructors
Name | Description |
---|---|
AssetReference() | Construct a new AssetReference object. |
AssetReference(String) | Construct a new AssetReference object. |
Properties
Name | Description |
---|---|
Asset | The loaded asset. This value is only set after the AsyncOperationHandle returned from LoadAssetAsync completes. It will not be set if only InstantiateAsync is called. It will be set to null if release is called. |
AssetGUID | Stores the guid of the asset. |
IsDone | Get the loading status of the internal operation. |
OperationHandle | The AsyncOperationHandle currently being used by the AssetReference. For example, if you call AssetReference.LoadAssetAsync, this property will return a handle to that operation. |
RuntimeKey | The actual key used to request the asset at runtime. RuntimeKeyIsValid() can be used to determine if this reference was set. |
SubObjectName | Stores the name of the sub object. |
Methods
Name | Description |
---|---|
Instantiate(Transform, Boolean) | InstantiateAsync the referenced asset as type TObject. This cannot be used a second time until the first load is released. If you wish to call load multiple times on an AssetReference, use Addressables.InstantiateAsync() and pass your AssetReference in as the key. See the Loading Addressable Assets documentation for more details. |
Instantiate(Vector3, Quaternion, Transform) | InstantiateAsync the referenced asset as type TObject. This cannot be used a second time until the first load is released. If you wish to call load multiple times on an AssetReference, use Addressables.InstantiateAsync() and pass your AssetReference in as the key. See the Loading Addressable Assets documentation for more details. |
InstantiateAsync(Transform, Boolean) | InstantiateAsync the referenced asset as type TObject. This cannot be used a second time until the first load is released. If you wish to call load multiple times on an AssetReference, use Addressables.InstantiateAsync() and pass your AssetReference in as the key. See the Loading Addressable Assets documentation for more details. |
InstantiateAsync(Vector3, Quaternion, Transform) | InstantiateAsync the referenced asset as type TObject. This cannot be used a second time until the first load is released. If you wish to call load multiple times on an AssetReference, use Addressables.InstantiateAsync() and pass your AssetReference in as the key. See the Loading Addressable Assets documentation for more details. |
IsValid() | Returns the state of the internal operation. |
LoadAsset<TObject>() | Load the referenced asset as type TObject. This cannot be used a second time until the first load is released. If you wish to call load multiple times on an AssetReference, use LoadAssetAsync<TObject>(Object) and pass your AssetReference in as the key. See the Loading Addressable Assets documentation for more details. |
LoadAssetAsync<TObject>() | Load the referenced asset as type TObject. This cannot be used a second time until the first load is released. If you wish to call load multiple times on an AssetReference, use LoadAssetAsync<TObject>(Object) and pass your AssetReference in as the key. See the Loading Addressable Assets documentation for more details. |
LoadScene() | Loads the reference as a scene. This cannot be used a second time until the first load is released. If you wish to call load multiple times on an AssetReference, use LoadAssetAsync<TObject>(Object) and pass your AssetReference in as the key. See the Loading Addressable Assets documentation for more details. |
LoadSceneAsync(LoadSceneMode, Boolean, Int32) | Loads the reference as a scene. This cannot be used a second time until the first load is unloaded. If you wish to call load multiple times on an AssetReference, use Addressables.LoadSceneAsync() and pass your AssetReference in as the key. See the Loading Addressable Assets documentation for more details. |
ReleaseAsset() | Release the internal operation handle. |
ReleaseInstance(GameObject) | Release an instantiated object. |
RuntimeKeyIsValid() | Checks if the current RuntimeKey is valid. |
ToString() | String representation of asset reference. |
UnLoadScene() | Unloads the reference as a scene. |
ValidateAsset(String) | Validates that the referenced asset allowable for this asset reference. |
ValidateAsset(Object) | Validates that the referenced asset allowable for this asset reference. |