언리얼 공부
언리얼의 네트워크 기본구조
jeongchanhyo
2025. 3. 18. 20:13
개요
언리얼 엔진 네트워크 시스템은 서버 - 클라이언트 구조를 기반으로 동작한다.
기본적으로 이런느낌으로 되어있는데 이것만 봐서는 이해가 잘 안된다. 하지만 알고 보면 정리가 되고 이해가 되기 때문에 하나하나 알아보겠다.
핵심 개념 설명
GameMode(서버 전용)
- 서버에서만 실행되고, 게임의 전반적인 규칙을 관리한다.
- 플레이어의 스폰, 점수 계산, 게임 진행 상태 변경 등을 담당한다.
GameState(서버 & 클라이언트)
- 모든 클라이언트가 공유하는 게임의 상태 정보 저장.
- Replication(복제)이 가능하며 클라이언트에서도 게임 정보 확인 가능
- 사실상 서버와 클라이언트를 이어주는 다리!
PlayerController(서버 & 클라이언트)
- 각 플레이어의 입력으 서버로 전송하고, 서버에서 받은 정보를 바탕으로 클라이언트의 UI 업데이트.
- 서버에서 소유하는 객체이며, 클라이언트에도 존재하지만 일부 기능은 서버에서만 실행.
데이터 흐름 및 RPC 역할
데이터 흐름
이런느낌의 흐름이 될거같다. 좀 더 이해하기 쉽게 숫자야구게임을 서버로 만들면서 만든 시퀀스 다이어그램을 참고로 넣어두겠다.
RPC란?
네트워크 환경에서 한 시스템이 다른 시스템에 함수를 실행해 달라고 요청하는 방식이다. 이거에대해서는 나중에 좀 더 자세히 다뤄볼 예정이다.