Unreal Engine/네트워크 2

[UE] #2. Network Role

언리얼의 멀티플레이 게임 환경에서, 생성된 Actor, Pawn 과 같은 Object 들은 어떻게 동작시켜야할까 ?? 앞전에 언리얼은 서버-클라이언트 모델을 기반으로 동작한다고 했다. 클라이언트는 서버에게 요청하고 서버는 해당 데이터들을 연결된 클라이언트에게로 전달해야한다. 이를 기반으로 우리는 Game Object 들을 원하는 동작을 하게끔 코드를 작성해야하는데 서버 위에 존재하는 Object 와 클라이언트에 존재하는 Object 는 다른 방식으로 동작할 것이다. 언리얼에서는 Actor 의 동기화 방식을 'Role' 이란 개념으로 구분지어놨다. 간단하게 말해서, 네트워크 동기화를 위해 해당 Actor 의 역할에 대해 정의한 Enum 항목이다. 이후에 언급되겠지만, Local ( 현재 프로세스 ) / R..

[UE] #1. Replication

* 언리얼의 동기화 개념 멀티 플레이 게임에서의 가장 핵심적인 작업 중의 하나라고 볼 수 있다. 만약, 내가 플레이어를 때렸을 때 상대편은 내가 때리는 모습, 상대방이 맞는 모습을 볼 수 있어야하고 나는 상대편이 맞는 모습과 내가 때리는 모습을 볼 수 있어야한다. 네트워크 통신으로 연결된 클라이언트들이 자신들의 화면을 어떻게 공유하고 자신에 화면에서만 볼 수 있는 데이터들은 어떻게 구별해서 구현하는지 정확하게 알 필요가 있다. 서버-클라이언트 모델을 기반으로 하는 언리얼에서 어떤 과정으로 서버에서 처리하고 연결된 클라이언트들에게 어떻게 동기화시키는지 알아보자. * Dedicated Server vs. Listen Server 언리얼에서 사용하는 서버-클라이언트 모델이다. * Dedicated Server..