1. 개요

  • 언리얼 엔진에서 GameMode와 GameState는 게임의 규칙과 상태를 관리하는 핵심 클래스
  • 특히 멀티플레이어 환경에서 중요한 역할을 수행

 

2. GameMode

  • 게임의 전반적인 규칙과 흐름을 관리
  • 서버에서만 존재하며, 클라이언트에는 Replicate 되지 않음
  • 플레이어의 로그인/로그아웃, 스폰 위치 결정, 게임 시작 및 종료 조건 등을 처리
  • AGameModeBase 클래스에서 파생되며, 다양한 게임 유형에 맞게 확장 가능

 

2-1. GameMode 동작 순서

3. GameState

  • 게임의 현재 상태와 진행 상황을 추적
  • 서버와 모든 클라이언트에 존재하며, 동기화되어 모든 플레이어가 동일한 정보를 공유합니다.
  • 게임 시간, 점수, 연결된 플레이어 목록 등의 정보를 관리합니다.
  • AGameStateBase 클래스에서 파생되며, 게임의 특정 요구 사항에 맞게 확장할 수 있습니다.

4. GameMode와 GameState의 차이점

  • GameMode는 서버에서만 존재하며, 게임의 규칙과 로직을 정의
  • GameState는 서버와 클라이언트 모두에 존재하며, 게임의 상태 정보를 공유하고 동기화