Addressable이어서 공부한 내용
이전에 그냥 Addresssables.InstantiateAsync로 오브젝트들을 생성했을 때는 변경사항이 적용되기 전 오브젝트들을 생성하는 경우들이 많았는데,
private void Update()
{
if (Input.GetKeyUp(KeyCode.T)) {
AsyncOperationHandle<GameObject> asyncOperationHandle =
Addressables.LoadAssetAsync<GameObject>("Assets/Prefabs/Circle.prefab");
asyncOperationHandle.Completed += AsyncOperationHandle_Completed;
Debug.Log("1");
}
}
private void AsyncOperationHandle_Completed(AsyncOperationHandle<GameObject> asyncOperationHandle)
{
Debug.Log("2");
if(asyncOperationHandle.Status == AsyncOperationStatus.Succeeded)
{
Instantiate(asyncOperationHandle.Result);
}
else
{A
Debug.Log("Failed to Load");
}
}
이런식으로 다운로드가 완료 된 이후에 오브젝트가 생성되게끔 코드를 바꾸니 위와같은 오류가 없어지게 되었다.
LoadAssetsAsync
를 사용하면 된다. 하나하나 다 이름으로 로드하거나, Lable로 한번에 로드가 가능하다