Unity ToyProject/RPG
ResourceManager
김조성준
2023. 7. 16. 21:33
전에 작성한 Managers 스크립트에 다음 코드를 작성하면 다른 스크립트에서 RescourceManager에 접근할 수 있습니다.
ResourceManager resource = new ResourceManager();
public static ResourceManager Resource { get { return Instance.resource; } }
Prefab 폴더 안의 프리팹들을 쉽게 생성하기 위해, 해당 프리팹의 이름 or 경로를 통해 프리팹을 생성하도록 작성한 코드입니다.
public class ResourceManager : MonoBehaviour
{
public T Load<T>(string path) where T : Object
{
return Resources.Load<T>(path);
}
public GameObject Instantiate(string path, Transform parent = null)
{
GameObject prefab = Load<GameObject>($"Prefabs/{path}");
if (prefab == null)
return null;
return Object.Instantiate(prefab, parent);
}
public void Destroy(GameObject destroyObject)
{
if (destroyObject == null)
return;
Object.Destroy(destroyObject);
}
}
다음과 같이 RescourceManager를 생성해 두면, 밑의 코드 한 줄로 Prefab을 생성할 수 있습니다.
Managers.Resource.Instantiate("UI");