서버에만 존재하며 게임의 규칙을 설정.
굳이 클라이언트가 알 필요 없는 정보들을 저장하는데 유용.
ex) 게임 규칙
모든 플레이어 간의 공유가 필요한 정보를 보관하고 모든 클라이언트에게 공유되는 클래스. (Replicated)
ex) 팀 점수, 접속된 플레이어 목록
접속된 클라이언트마다 현재 상태값을 포함하고 있는 Player State 객체를 갖고 있음.
Pawn에 할당되지만, Pawn이 소멸되거나 리스폰되어도 사라지지 않음.
ex) K/D/A
각 클라이언트는 하나의 Player Controller를 가지고 Pawn을 제어함
서버는 모든 클라이언트의 Player Controller를 가지고 있음.
ex) UI
User Interface를 표시
변수 및 함수의 동기화.
서버에서 Replication 해주지 않으면 클라이언트에 반영되지 않음.
중요한 로직은 서버에서 실행하고, 결과만 클라이언트에 뿌려주는 방식이 일반적.
엔진 시작 시 생성되고 종료될 때까지 소멸되지 않는 클래스.
따라서 지속성 데이터를 저장하기 좋지만, 서버와 각 클라이언트마다 따로 존재하고 통신하지 않는다는 단점이 있음.
'Unreal Engine 4' Network Compendium
https://cedric-neukirchen.net/Downloads/Compendium/UE4_Network_Compendium_by_Cedric_eXi_Neukirchen.pdf
언리얼 네트워크 정리
https://unrealengine.tistory.com/44
[UE4] 멀티플레이 개념잡기, Replicated
https://m.blog.naver.com/wonjong010/221963972139
언리얼 공식 문서
https://docs.unrealengine.com/4.26/ko/InteractiveExperiences/Framework/QuickReference/
https://docs.unrealengine.com/4.26/ko/InteractiveExperiences/Networking/Blueprints/
https://docs.unrealengine.com/4.27/ko/InteractiveExperiences/Networking/Actors/
https://docs.unrealengine.com/4.27/ko/InteractiveExperiences/Networking/Actors/RPCs/