인풋매니저, 리소스매니저 구조 생성 및 리소스 정리
This commit is contained in:
20
Assets/Scripts/Managers/InputManager.cs
Normal file
20
Assets/Scripts/Managers/InputManager.cs
Normal file
@@ -0,0 +1,20 @@
|
||||
using System;
|
||||
using UnityEngine;
|
||||
|
||||
public class InputManager
|
||||
{
|
||||
public Action KeytAction = null;
|
||||
|
||||
public void OnUpdate()
|
||||
{
|
||||
if (Input.anyKey == false)
|
||||
{
|
||||
return;
|
||||
}
|
||||
|
||||
if (KeytAction != null)
|
||||
{
|
||||
KeytAction.Invoke();
|
||||
}
|
||||
}
|
||||
}
|
||||
2
Assets/Scripts/Managers/InputManager.cs.meta
Normal file
2
Assets/Scripts/Managers/InputManager.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 8affb13a0221d604ebc76b80353674ef
|
||||
@@ -3,8 +3,12 @@ using UnityEngine;
|
||||
public class Managers : MonoBehaviour
|
||||
{
|
||||
static Managers s_instance; // static으로 유일성 보장
|
||||
|
||||
public static Managers Instance { get { Init(); return s_instance; } } // 유일한 매니저를 가져온다.
|
||||
static Managers Instance { get { Init(); return s_instance; } } // 유일한 매니저를 가져온다.
|
||||
|
||||
InputManager _input = new InputManager();
|
||||
ResourceManager _resource = new ResourceManager();
|
||||
public static InputManager Input { get { return Instance._input; } }
|
||||
public static ResourceManager Resource { get { return Instance._resource; } }
|
||||
|
||||
// Start is called once before the first execution of Update after the MonoBehaviour is created
|
||||
void Start()
|
||||
@@ -15,7 +19,7 @@ public class Managers : MonoBehaviour
|
||||
// Update is called once per frame
|
||||
void Update()
|
||||
{
|
||||
|
||||
_input.OnUpdate();
|
||||
}
|
||||
|
||||
static void Init()
|
||||
|
||||
30
Assets/Scripts/Managers/ResourceManager.cs
Normal file
30
Assets/Scripts/Managers/ResourceManager.cs
Normal file
@@ -0,0 +1,30 @@
|
||||
using UnityEngine;
|
||||
|
||||
public class ResourceManager
|
||||
{
|
||||
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)
|
||||
{
|
||||
Debug.Log($"Failed to load prefab : {path}");
|
||||
return null;
|
||||
}
|
||||
|
||||
return Object.Instantiate(prefab, parent);
|
||||
}
|
||||
|
||||
public void Destroy(GameObject go)
|
||||
{
|
||||
if (go == null)
|
||||
{
|
||||
return;
|
||||
}
|
||||
Object.Destroy(go);
|
||||
}
|
||||
}
|
||||
2
Assets/Scripts/Managers/ResourceManager.cs.meta
Normal file
2
Assets/Scripts/Managers/ResourceManager.cs.meta
Normal file
@@ -0,0 +1,2 @@
|
||||
fileFormatVersion: 2
|
||||
guid: 02a54b2c0d9166a4fad881d75ebc136b
|
||||
Reference in New Issue
Block a user