일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- w3school
- dfs
- 문제풀이
- Material
- 백준
- python
- Unity
- W3Schools
- 파이썬
- Tutorial
- C#
- loop
- UE5
- Algorithm
- dynamic
- c++
- github
- 시작해요 언리얼 2022
- 오류
- Basic
- guide
- 프로그래밍
- parameter
- Class
- 기초
- Unreal Engine 5
- String
- DP
- Programming
- 재귀
- Today
- Total
행복한 개구리
Unity PUN2 21.05.11. 로비생성 본문
룸 기반 게임서버 - 제한된 인원수용(최대 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에 기입해주면 연결할 수 있는 상태가 된다.
RPC통신
원격 프로시저 호출 - 위키백과, 우리 모두의 백과사전
위키백과, 우리 모두의 백과사전. 원격 프로시저 호출(영어: remote procedure call, 리모트 프로시저 콜, RPC)은 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 함수나 프로시저를 실행할 수
ko.wikipedia.org
포톤 동기화 참고 블로그
네트워크 Day3 (포톤네트워크 PUN2 - 동기화)
05. 플레이어 동기화 시키기 동기화는 업데이트 빈도에 따라 크게 3가지 타입이 있다. 1. 잦은 업데이트(위치, 문자상태) 2. 가끔 업데이트(플레이어 행동) 3. 희귀 업데이트 & 상태(문의 개폐, 지도
ridohee.tistory.com
'Unity > Project : Cursed Treasure' 카테고리의 다른 글
Unity 팀프 21.05.21 PUN2 - 스크립트 정리 및 Scene전환 (0) | 2021.05.22 |
---|---|
Unity PUN2 21.05.18. JoinRoom 구현, 채팅 구현 (0) | 2021.05.18 |
Unity 팀프로젝트 21.05.14. Pun2 - 방목록 출력 (0) | 2021.05.14 |
Unity 팀프 21.05.13. PUN서버구축 (0) | 2021.05.13 |
Unity 팀프 21.05.12 PUN2 - 방 생성 및 참가 (0) | 2021.05.12 |