반응형
유니티 C# 어드레서블 Addressables 간단 구현 예시 코드 작성
using UnityEngine;
using UnityEngine.AddressableAssets;
using UnityEngine.ResourceManagement.AsyncOperations;
public class AddressableExample : MonoBehaviour
{
// Addressable Asset을 참조하는 AssetReference를 추가합니다.
public AssetReference assetReference;
void Start()
{
// Addressable Asset 로드
LoadAsset();
}
public void LoadAsset()
{
// 비동기로 에셋 로드
assetReference.LoadAssetAsync<GameObject>().Completed += OnAssetLoaded;
}
private void OnAssetLoaded(AsyncOperationHandle<GameObject> obj)
{
if (obj.Status == AsyncOperationStatus.Succeeded)
{
// 로드가 성공했을 때, 에셋을 인스턴스화합니다.
Instantiate(obj.Result, Vector3.zero, Quaternion.identity);
}
else
{
Debug.LogError("Failed to load Addressable Asset.");
}
}
public void UnloadAsset()
{
// 에셋 언로드 (메모리에서 해제)
assetReference.ReleaseAsset();
}
}
반응형