Mirror Guide GameObjects

1 minute read



Game Objects

네트워크화된 게임 오브젝트는 Mirror의 네트워킹 시스템에 의해 제어되고 도익화되는 게임 오브젝트이다. 동기화된 네트워크 게임 오브젝트를 사용하여 게임의 인스턴스를 플레이하는 모든 플레이어를 위한 공유 환경을 만들 수 있다. 동일한 이벤트와 동작을 보거나 들으면서 독자적인 관점에서 볼 수 도 있다.

Mirror의 멀티 플레이어 게임은 일반적으로 네트워크로 연결된 게임 오브젝트와 일반 게임 오브젝트가 혼합된 장면을 사용하여 제작된다.

  • Networked GameObjects

    네트워크화된 게임 오브젝트는 함께 게임을 하는 모든 사용자 간에 동기화되어야 하는 방식으로 게임 플레이 중에 이동하거나 변화하는 오브젝트이다.

  • None-Networked GameObjects

    네트워크화되지 않은 게임 오브젝트는 게임 플레이 중에 전혀 움직이지 않거나 변경되지 않는 오브젝트(바위, 울타리 등 정적인 지형물) 또는 플레이어 간에 동기화할 필요가 없는 움직임이나 변화(게임 배경에서 가볍게 흔들리는 나무나 구름)이다.

네트워크 게임 오브젝트는 NetworkIdentity 컴포넌트가 연결되어 있는 오브젝트이다. 하지만 이것만으로는 게임 오브젝트가 멀티 플레이어 게임에서의 기능이 활성화되기에는 충분하지않다. NetworkIdentity 컴포넌트가 동기의 시작점이고 NetworkManager는 게임 오브젝트의 작성과 파괴를 동기화 할 수 있지만 그 이외에는 동기화할 게임 오브젝트의 속성을 지정하지 않는다.

네트워크화된 각 게임들은 게임 오브젝트에서 정확히 동기화해야 하는 것들은 종류와 목적에 따라 달라진다.

예)

  • 플레이어와 NPC 처럼 움직이는 게임 오브젝트의 위치와 회전

  • 애니메이션이 있는 게임 오브젝트의 애니메이션 state

  • 게임의 현재 남은 라운드, 시간 또는 플레이어의 에너지 등 변수의 값들


이들 중 일부는 Mirror에 의해서 자동으로 동기화 될 수 있다. 네트워크 게임 오브젝트의 동기화된 생성과 파괴는 NetworkManager에 의해 관리되며 이는 Spawning으로 알려져 있다.

Network Transform 컴포넌트를 사용하여 게임 오브젝트의 위치와 회전을 동기화하고 Network Animator 컴포넌트를 사용하여 게임 오브젝트의 애니메이션을 동기화할 수 있다.