참고: UNet은 지원이 중단되었으며 향후 Unity에서 삭제될 예정입니다. 현재 새로운 시스템이 개발 중입니다. 자세한 내용과 다음 단계는 이 블로그 포스트를 참조하십시오. |
네트워킹 기능 사용자는 아래와 같이 두 타입으로 나눌 수 있습니다.
Unity 네트워킹은 “고수준” 스크립팅 API를 제공합니다. 이는 HLAPI라고 부르며, 사용하게 되면 “로우 레벨” 구현 세부 사항에 대해 신경쓰지 않고도 멀티 유저 게임에 일반적으로 필요한 대부분의 요구 사항을 만족시킬 수 있는 커맨드에 접근할 수 있습니다. 아래는 HLAPI를 활용할 수 있는 방법입니다.
Unity 네트워킹은 엔진과 에디터에 통합되어 있으므로, 멀티플레이어 게임을 빌드할 수 있도록 컴포넌트와 시각적 툴을 사용하여 작업할 수 있습니다. 다음은 몇 가지 기능입니다.
Unity는 게임 제작과 릴리스 과정 전반을 지원할 수 있도록 인터넷 서비스를 제공합니다. 아래는 지원하는 기능의 예입니다.
Unity는 다음을 지원하는 실시간 전송 레이어를 제공합니다.
Unity의 네트워킹은 세션 확인을 위한 기본 지원을 제공하는 단순한 빌트인 인증 기능을 구현하지만, 강력한 인증 솔루션은 아닙니다.
강력한 인증은 악의적인 사용자가 플레이어 세션을 가로채거나, 다른 사용자를 사칭하거나, 합법적인 플레이어를 게임에서 연결 해제하거나, 게임 또는 앱에 기타 악의적인 행동을 하지 못하도록 만드는 데 도움이 되므로 멀티플레이어 프로젝트를 개발할 때 중요한 요소가 될 수 있습니다.
Unity는 단순한 빌트인 인증만 제공하므로, 게임 또는 앱에서 악의적인 행동에 대한 강력한 보호가 필요한 경우 타사 인증 및 암호화 솔루션을 사용하거나, 이 레퍼런스 구현과 NetworkTransport API와 같은 플러그인을 사용하여 직접 구현해야 합니다.
Unity가 제공한 멀티플레이어 예제 프로젝트를 분석해서 이들 기능이 어떻게 사용되고 있는지 알 수 있습니다. 아래의 예제 프로젝트는 Unity 포럼 포스트에 있습니다.