Unity + Photon Pun2 원격 멀티 플레이(1)

스윗포테이토·2025년 1월 5일
0

해커톤 때 개발 했던 게임이 하나의 PC로 진행하는 2인 게임이었는데, 살짝 욕심이 생겨서 팀원들에게 허락을 구하고 원격 멀티가 가능하도록 수정하는 작업을 하고 있다.

우선 WebGL 빌드가 가능해야 하고,
이미 완성된 게임이기 때문에 간단하게(?) 붙일 수 있는 라이브러리를 찾았다.

크게 Mirror와 Photon이 있는데, 예제가 많고 호스팅 서비스를 제공하는 Photon을 사용했다.

Photon에서 무료로 제공하는 서버는 동시 접속자(CCU) 최대 20명까지를 허용하고, 그 이상은 유료 요금제를 사용해야 한다. 우선 설치에 앞서 프로젝트를 등록해두면 좋다. (어차피 세팅에 AppId가 필요하기 때문에...)

프로젝트 만들기

Create New Application에서 새로운 앱을 만들 수 있다.

Type: MultiPlayer Game
SDK: Pun

설정은 간단하다.
이제 대시보드에서 AppId를 찾을 수 있다.

우선 세팅은 Pun2 패키지를 설치해야 한다.
설치는 그냥 Unity Asset Store에서 "내 에셋에 추가하기"로 추가해주면 된다.

설치하고 나면 세팅 UI가 뜨는데 AppId를 추가해주어야 한다.

이후 셋업은 자동으로 완료된다!

Instantiate

공유되는 요소는 Instantiate를 Photon에서 해주어야 한다.

PhotonNetwork.Instantiate("Prefab경로", Vector3.zero, Quaternion.identity);

특이한 점은 Resource 폴더에 배치해서 이름(경로)으로 불러온다는 점이다.
기본적으로 PhotonView 컴포넌트를 프리팹에 배치해주면 위치요소는 모두에게 공유된다.

reference

Photon 공식 문서

profile
나의 삽질이 미래의 누군가를 구할 수 있다면...

0개의 댓글

관련 채용 정보