싱글톤 Singleton

Intro

  • 싱글톤의 이해

싱글톤 패턴

싱글톤이란 하나의 인스턴스를 만들고, 어디서든 그 인스턴스에 접근할 수 있도록 하는 패턴이다.

예를들면 어떤 게임을 관리하는 GameManager가 있을때 싱글톤을 사용하면 다른 오브젝트들이 쉽게 접근할 수 있도록 할수 있다.

유니티 싱글톤 예제

GameManager

public class GameManager : MonoBehaviour
{
    public int HP;

    public static GameManager instance = null;
    private void Awake()
    {
        if(instance==null)
        {
            instance = this;
        }
        else if(instance!=this)
        {
            Destroy(this.gameObject);
        }
        DontDestroyOnLoad(this);
    }

Player

GameManager.instance.HP = 100;
int MyHP = GameManager.instance.HP;
print(MyHP);

싱글톤을 통해 GameManager의 인스턴스를 생성하고 DontDestroyOnLoad 함수를 통해 다른씬으로 넘어가도 객체가 삭제되지않도록 한다.

이제 다른 클래스에서도 GameManager의 인스턴스를 읽고 쓰기가 가능하다.

참고자료

https://youtu.be/FucCsNVOphY

댓글남기기