본문 바로가기
언리얼_엔진_게임개발_공부/언리얼 엔진

Gameplay Framework

by jaboy 2025. 3. 26.

Gameplay Framework 란?

게임플레이 구조를 만드는 언리얼 엔진의 구성요소와 플로우를 말한다. 언리얼 엔진을 활용해 게임을 만들 때 기본 단위가 되는 게임플레이 요소들이라 할 수 있다.

 

구성 요소 / 순서 / 레플리케이션

https://dev.epicgames.com/documentation/en-us/unreal-engine/gameplay-framework-in-unreal-engine

 

위의 엔진 공식 문서에서 설명하는 순서대로 게임플레이 프레임워크의 주요 구성요소 살펴보기

  역할 예시 생성 레플리케이션
GameInstance 레벨 전환에 관계 없이 게임 전반에 걸쳐 데이터 저장 또는 로직 수행하는 매니저 클래스. - 게임 저장 시스템
- Online Subsystem
엔진 실행 ~ 종료까지 생존 X
서버, 클라이언트마다 독립적으로 존재
GameMode 다른 프레임워크 구성요소들을 인스턴스화하며 게임플레이 규칙과 구조에 관한 로직을 수행하는 서버 기반 매니저 클래스 - 승패 판단
- 게임 플로우 진행
레벨 로드 시 첫번째로 생성 X
서버에만 존재
GameState 모든 플레이어와 관련이 있는 게임 관련 데이터 저장 및 로직 수행 - 팀별 점수
- 접속 플레이어 목록
게임 모드가 첫번째로 생성
* 단일 생성
O
단일 스테이트가 모든 클라이언트에 복제
PlayerState 개별 플레이어와 관련이 있는 게임 관련 데이터 저장 및 로직 수행 - 체력
- 인벤토리
- ammo 카운트
플레이어 입장 시 게임 모드가 생성
* 각 플레이어별 생성
O
각 플레이어별 스테이트가 모든 클라이언트에 복제
PlayerController 플레이어의 행동 관련 로직 수행
- 사용자 입력 처리
- HUD 표시
- 사용자 입력 처리
- 서버-클라이언트 간 통신
플레이어 입장 시 생성 O
해당 클라이언트의 컨트롤러만 복제
Pawn 플레이어의 물리적 표현물
(physical manifestation)
컨트롤러의 디렉션을 물리적으로 수행
- 충돌 컴포넌트
- 메시 컴포넌트
- 무브먼트 컴포넌트
- 카메라 (뷰타겟, 애니메이션)
- 피직스
플레이어 입장 시 생성 및 컨트롤러 possess O
각 플레이어의 폰이 모든 클라이언트에 복제
- owning : autonomous proxy
- other clients : simulated proxy
- server : authority
Character 캐릭터의 경우 스켈레탈 메시, 캐릭터 무브먼트 컴포넌트 등 특화된 컴포넌트로 구성 - 스켈레탈 : 애니메이션 특화
- 캐릭터 무브먼트 : 입력-이동 특화
  O
Character movement component
UI 플레이어와 관련 있는 게임 정보를 화면에 표시 - HUD
- 메뉴 화면
  X
클라이언트에만 존재