Vetenir 2025. 3. 5. 22:01

GameInstance는 게임의 전체 생명주기 동안 유지되는 데이터와 로직을 관리하는 클래스입니다.

아래에서 GameInstance의 역할, 특징, 그리고 사용 사례를 자세히 설명드리겠습니다.


1. GameInstance의 역할

  • 게임 전반의 데이터 관리:
    • 게임이 시작되고 종료될 때까지 유지되는 데이터를 저장합니다.
    • 예: 플레이어의 계정 정보, 설정, 진행 상태, 세션 데이터 등.
  • 레벨 전환 시 데이터 유지:
    • 레벨이 변경되더라도 데이터가 유지됩니다. 따라서 레벨 간에 공유해야 하는 정보를 저장하는 데 적합합니다.
  • 글로벌 로직 관리:
    • 게임 전체에 걸쳐 적용되는 로직을 처리합니다.
    • 예: 네트워크 연결 관리, 게임 설정 적용, 세션 관리 등.

2. GameInstance의 특징

  • 싱글톤(Singleton) 구조:
    • 게임이 실행되는 동안 단 하나의 인스턴스만 존재합니다.
    • 모든 레벨과 시스템에서 동일한 GameInstance를 참조할 수 있습니다.
  • 네트워크 게임에서의 동작:
    • 서버와 클라이언트 각각 독립적인 GameInstance를 가집니다.
    • 서버와 클라이언트 간에 복제되지 않습니다.
  • 생명주기:
    • 게임이 시작될 때 생성되고, 게임이 종료될 때까지 유지됩니다.
    • 레벨 전환 시에도 데이터가 유지됩니다.