싱글톤이란?
싱글톤 패턴이란 하나의 인스턴스만 존재하며, 전역적으로 접근할 수 있는 클래스 디자인 패턴 입니다.
어떠한 상황에 사용하는가?
게임 매니저나 오디오 매니저 등 게임 내에 한개만 필요하고 여러곳에서 접근을 할 수 있도록 만들어야 할 때 사용합니다.
싱글톤 사용하는법
싱글톤은 크게 두가지로 나누어서 적용시킬 수 있는데 첫번째로 스크립트에 삽입하는것과 싱글톤 스크립트를 상속시키는 방법이 있습니다!
public class GameManager : MonoBehaviour
{
private static GameManager instance = null;
void Awake()
{
if(instance == null)
{
instance = this;
}
else
{
Destroy(gameObject);
}
}
...
}
이러한 스크립트 내에 싱글톤 패턴을 작성하는 방법과
public abstract class Singleton<T> : MonoBehaviour where T : MonoBehaviour
{
private static T _instance;
public static T instance
{
get
{
if (_instance == null)
{
try
{
_instance = (T)FindObjectOfType<T>();
}
catch (System.Exception e)
{
Debug.LogError(e.StackTrace);
return null;
}
}
return _instance;
}
}
}
따로 싱글톤 스크립트 작성 후 상속시키는 방법이 있습니다.
이상으로 글 마치겠습니다!
'ㄱㅔ임 ㄱㅐ발' 카테고리의 다른 글
무적 기능을 구현해보ㅈㅏ!(코루틴) (0) | 2022.10.14 |
---|---|
코루틴에 대해 알아보ㅈㅏ! (0) | 2022.10.07 |
똥 피하기 게임을 만들어보ㅈㅏ!(3. Instantiate를 사용하여 똥을 만들기, 게임 빌드하기) (0) | 2022.10.05 |
똥 피하기 게임을 만들어보ㅈㅏ!(2. 플레이어와 똥 오브젝트 만들기, Rigidbody와 Collider 이해하기) (0) | 2022.10.04 |
똥 피하기 게임을 만들어보ㅈㅏ!(1. 타이틀씬 만들기) (2) | 2022.10.03 |