[UE] GameMode / GameState / Player State / Player Controller / Pawn
글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자를 적어주세요. 글의 요약 설명 부분. 150자입니다
목차
GameMode / GameState / Player State / Player Controller / Pawn
비교
GAME MODE | GAME STATE | Player State | Player Controller |
Server Only | Server & all Clients | Server & all Clients | Server & Owning Client |
- Default Classes
|
- State of the Game - Top Scoring Players - Teams in the Lead - Team Scores - Arrray of Player States |
- State of the Player
|
- Access to the HUD
|
PAWN | HUD/Widget | |
Server & all Clients | Owning Clinet Only |
GAME MODE는 Server만 가지고 있다. Client가 GAME MODE에 접근하면 nullptr를 반환한다.
반면에 GAME STATE은 Server와 Client 모두 가지고 있다. Server의 정보가 Replicated 되어 GAME STATE에 내려오고 이를 통해 Client에 정보가 전달된다.
비교: GameMode, GameState, GameInstance
GameMode | 게임의 규칙을 정의 서버 측에서만 존재하며, 클라이언트 측에서는 복제되지 않는다 |
GameState | GameMode가 정의한 규칙에 따라 게임의 현재 상태를 추적 게임 상태는 모든 클라이언트에 복제 |
GameInstance | 게임 실행 전체에 걸쳐 유지되는 정보를 저장하는 데 사용 이는 여러 레벨이나 세션 간에 유지되어야 하는 정보를 포함할 수 있다. GameInstance는 게임이 실행되는 동안 계속 존재하며, 레벨이 변경되거나 게임이 재시작되더라도 소멸하지 않는다. |
GameMode
이는 게임의 규칙을 정의하는 클래스다. 게임 모드는 플레이어가 게임에 어떻게 참여할지, 어떤 목표를 달성해야 할지, 그리고 게임이 어떻게 종료될지를 결정한다.
예를 들어, 데스매치, 캡쳐 더 플래그, 라운드 기반, 팀 기반 등의 다양한 게임 모드를 설정할 수 있다.
GameMode는 서버 측에서만 존재하며, 클라이언트 측에서는 복제되지 않는다.
GameState
게임 상태는 GameMode가 정의한 규칙에 따라 게임의 현재 상태를 추적한다. 이는 플레이어의 점수, 남은 시간, 현재 라운드 등과 같은 정보를 포함할 수 있다.
GameState는 모든 클라이언트에 복제되므로, 모든 플레이어가 일관된 게임 경험을 얻을 수 있다
Game Instance
게임 인스턴스는 게임 실행 전체에 걸쳐 유지되는 정보를 저장하는 데 사용된다.
이는 여러 레벨이나 세션 간에 유지되어야 하는 정보를 포함할 수 있다.
예를 들어, 플레이어의 캐릭터 선택, 진행 상황, 누적 점수 등을 저장할 수 있다.
Game Instance는 게임이 실행되는 동안 계속 존재하며, 레벨이 변경되거나 게임이 재시작되더라도 소멸하지 않는다.
체력(Health)을 PlayerState이 아닌 Character 클래스에 넣는 이유
Player State | Character | |
- Score - Defeats - Slower Net Update (Player State에서는 Net Update 속도가 느리다) |
- Damage Events - Fast Replication (Replication 속도가 빠르다) |
'⭐ Unreal Engine > UE 개념정리' 카테고리의 다른 글
댓글
이 글 공유하기
다른 글
-
[UE] Subsystem 종류: UEngineSubsystem, UEditorSubsystem, UGameInstanceSubsystem, ULocalPlayerSubsystem, UWorldSubsystem
[UE] Subsystem 종류: UEngineSubsystem, UEditorSubsystem, UGameInstanceSubsystem, ULocalPlayerSubsystem, UWorldSubsystem
2023.12.11 -
[UE] BindWidget, BindWidgetOptional, BindWidgetAnim
[UE] BindWidget, BindWidgetOptional, BindWidgetAnim
2023.12.04 -
[UE] 빌드 환경설정(Build Mode): Debug, DebugGame, Development, Shipping
[UE] 빌드 환경설정(Build Mode): Debug, DebugGame, Development, Shipping
2023.11.15 -
[Unreal] 리플리케이션 (Replication), Remote Procedure Call (RPC)
[Unreal] 리플리케이션 (Replication), Remote Procedure Call (RPC)
2023.11.08