참고: UNet은 지원이 중단되었으며 향후 Unity에서 삭제될 예정입니다. 현재 새로운 시스템이 개발 중입니다. 자세한 내용과 다음 단계는 이 블로그 포스트를 참조하십시오. |
이 문서는 새로운 Unity 멀티플레이어 네트워크 시스템을 사용하여 싱글 플레이어 게임을 멀티 플레이어 게임으로 전환하는 과정에 대해 다룹니다. 여기 설명된 과정은 단순화된 것으로, 실제 게임에서는 고수준의 과정을 필요로 합니다. 모든 경우에서 이대로 되지는 않지만, 기본적인 방향은 같습니다.
자세한 내용은 NetworkManager 사용를 참조하십시오.
playerPrefab
를 플레이어 프리팹으로 설정합니다.자세한 내용은 플레이어 오브젝트를 참조하십시오.
isLocalPlayer
에 따라 입력 및 제어 스크립트를 업데이트합니다.isLocalPlayer
를 사용하도록 카메라를 수정합니다.예를 들어, 아래 스크립트는 로컬 플레이어용 입력만을 처리합니다.
using UnityEngine;
using UnityEngine.Networking;
public class Controls : NetworkBehaviour
{
void Update()
{
if (!isLocalPlayer)
{
// exit from update if this is not the local player
return;
}
// handle player input for movement
}
}
상태 동기화를 참조하십시오.
네트워크 액션을 참조하십시오.
적과 같은 비플레이어 프래팹을 다음과 같이 고정해야 합니다.
OnStartServer()
함수를 사용하여 스포너가 서버에서만 실행되도록 수정해야 합니다.NetworkServer.Spawn()
을 호출합니다.