Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- using Cysharp.Threading.Tasks;
- using UnityEngine;
- using UnityEngine.AddressableAssets;
- public class AddressablesTest : MonoBehaviour
- {
- [Header("Preferences")]
- [SerializeField] private AssetReferenceGameObject _assetReferenceGameObject;
- private GameObject _instance;
- private async void Instantiate()
- {
- if (_instance != null)
- return;
- _instance = await Addressables.InstantiateAsync(_assetReferenceGameObject);
- }
- private void DestroyInstance()
- {
- if (_instance == null)
- return;
- Addressables.ReleaseInstance(_instance);
- _instance = null;
- }
- private void OnGUI()
- {
- if (GUILayout.Button("Instantiate"))
- Instantiate();
- if (GUILayout.Button("Destroy Instance"))
- DestroyInstance();
- if (GUILayout.Button("Unload Unused Assets"))
- Resources.UnloadUnusedAssets();
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement