Notice
Recent Posts
Recent Comments
Link
«   2025/05   »
1 2 3
4 5 6 7 8 9 10
11 12 13 14 15 16 17
18 19 20 21 22 23 24
25 26 27 28 29 30 31
Archives
Today
Total
관리 메뉴

행복한 개구리

Unity PUN2 21.05.11. 로비생성 본문

Unity/Project : Cursed Treasure

Unity PUN2 21.05.11. 로비생성

HappyFrog 2021. 5. 11. 16:36

룸 기반 게임서버 - 제한된 인원수용(최대 10명)

ㄴ가장 좋은 방법은 매치메이킹

 

로비

ㄴ어플리케이션의 로비는 마스터 서버에서 존재 하며 게임의 룸 목록을 제공 합니다.

 

AppID

ㄴ각각의 게임은 클라우드에서 AppID를 가지고있으며, 같은 AppID를 가진다면 플레이어들이 서로 만날 수 있다.

ㄴ버전을 통해 플레이어들을 분리할 수도 있다.

-----------------------------------------------------------------------------------------------------------------------------------

우선 Unity에서 Launcher 빈오브젝트와 스크립트를 만들어 할당하고 아래 스크립트를 작성한다.

 

using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using Photon.Pun;

public class Launcher : MonoBehaviour
{
    #region Private Serializable Fields
    #endregion

    #region Private Fields
    string gameVersion = "1";
    #endregion

    #region MonoBehaviour CallBacks
    private void Awake()
    {
        PhotonNetwork.AutomaticallySyncScene = true;
    }
    void Start()
    {
        Connect();
    }

    public void Connect()
    {
        if (PhotonNetwork.IsConnected)
        {
            PhotonNetwork.JoinRandomRoom();
        }
        else
        {
            PhotonNetwork.GameVersion = gameVersion;
            PhotonNetwork.ConnectUsingSettings();
        }
    }
    #endregion
}

우선 유니티 AssetStore에서 Pun2를 임포트하여 사용한다. Json과 마찬가지로 using Photon.Pun을 선언하면 내장된 기능들을 사용가능하다. 위 스크립트에 사용된 코드들은 전부 Pun2의 내장 클래스와 메서드들이다.

 

이를 완성하고 유니티로 넘어가면 이메일이나 AppId를 기입하라는 팝업이 뜨는데 거기에 쓸 AppId는 Photon사이트에서 회원가입 후

 

 관리화면에서

Photon Cloud를 들어가면 Application생성버튼이 있다. 애플리케이션을 생성하면 

이런식으로 내가 입력했던 이름과 어플리케이션ID가 표시된다 이 어플리케이션ID를 앱ID에 기입해주면 연결할 수 있는 상태가 된다. 

앞으로 많이 볼 듯한 콜백들의 간단한 정리 // Photon Docs

 

 

RPC통신

 

원격 프로시저 호출 - 위키백과, 우리 모두의 백과사전

위키백과, 우리 모두의 백과사전. 원격 프로시저 호출(영어: remote procedure call, 리모트 프로시저 콜, RPC)은 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 함수나 프로시저를 실행할 수

ko.wikipedia.org

포톤 동기화 참고 블로그

 

네트워크 Day3 (포톤네트워크 PUN2 - 동기화)

05. 플레이어 동기화 시키기 동기화는 업데이트 빈도에 따라 크게 3가지 타입이 있다. 1. 잦은 업데이트(위치, 문자상태) 2. 가끔 업데이트(플레이어 행동) 3. 희귀 업데이트 & 상태(문의 개폐, 지도

ridohee.tistory.com