[Unity][멀티플레이] #1. Photon을 유니티에 연동해보자
💡 해당블로그는 "Unity엔진과 Chat gpt를 활용한 멀티플레이 환경 구성 과정"에서 학습한 내용을3달이 지난 지금에서야복습 겸 스파르타 유니티 과제에 적용시키는 과정을 담았습니다.
1. 멀티플레이 환경
2. 포톤 기본 세팅
3. 포톤 연결 / 로비와 방 생성
4. 플레이어 생성
5. Agora를 사용한 실시간 카메라 연결
🎨 1. 멀티플레이 환경
멀티플레이 환경을 구성할 수 있는 방법에는 몇 가지가 있다.
1. Unity의 NetCode For GameObjects (NGO)
: 유니티에서 제공하는 멀티플레이어 네트워크 솔루션
2. Photon (PUN2)
: 멀티플레이어 게임을 위한 클라우드 기반 서버 서비스
: 직관적이고 사용하기 쉬운 Api를 제공 / 클라우드 서버 제공하므로 서버 관리를 하지 않아도 됨
: 무료버전은 10 ~ 20명 정도 사용가능
: 100 트래픽 이하의 경우 무료로 사용가능
: 대규모 게임에는 추가적인 비용이 발생할 수 있음
: Fusion, Pun2, Quantum 등의 패키지가 있음
📝 P2P (Peer-to-Peer)
: 서버에 100프로 의존하지 않고 클라이언트들이 서로 통신하며 게임을 진행하는 방식
📝 Pun2
: 처음 방을 만든 플레이어가 자동으로 그 방의 "마스터 클라이언트"가 됨.
: 마스터 클라이언트가 게임에서 나가면 방에 남아 있는 다른 플레이어 중 한 명이 자동으로 새로운 마스터 클라이언트가 됨
: 누군가 마스터 역할을 항상 맡고, 이 과정이 자동으로 이루어지기 때문에 게임을 개발하거나 방을 관리하는 사람이 따로 신경 쓸 필요가 없다.
🔖서버-클라이언트 구조 (Client-Server-Architecture)
: p2p와 비교할 때 가져오는 네트워크 구조
: 서버가 모든 중요한 역할을 맡아서 처리하고, 클라이언트 (플레이어)는 서버에 요청을 보내고 응답을 받는 방식으로 동작함.
1. 서버 : 모든 게임의 중요한 데이터를 관리, 게임의 상태 동기화
2. 클라이언트 : 서버에게 요청을 보내어 게임에 필요한 정보를 받음
: 대표적인 예시로 MMO RPG 같은 대규모 온라인 게임에서 사용함.
🎨 2. 포톤 세팅
https://dashboard.photonengine.com/ko-kr
로그인 | Photon Engine
Sign In 아직 계정이 없으신가요? 회원 등록은 여기를 클릭
id.photonengine.com
1. 포톤 홈페이지에 로그인한 후 "관리화면으로 이동" 텍스트 클릭
2. 새 애플리케이션 만들기 버튼 클릭
3. Photon 종류 - Pun으로 지정, 본인이 사용할 이름 작성
4. 본인이 만든 Photon 애플리케이션이 보인다.
5. 에셋스토어에 접속 후 PUN2를 검색 후 추가한다.
6. 유니티 프로젝트를 열어 PackageManger - My Asset의 Pun2를 다운로드 한 뒤 Import 한다.
7. PUN Wizard가 뜨면 포톤 홈페이지에서 만들었던 애플리케이션의 App Id를 복사 붙여 넣기 한다.
7. Setup Project 버튼을 클릭한다
포톤과 연동을 완료하였다.
🎨 플레이어 생성
2025.02.20 - [Unity] - [Unity][멀티플레이] #2. 플레이어 생성, 동기화
[Unity][멀티플레이] #2. 플레이어 생성, 동기화
💡 해당블로그는 "Unity엔진과 Chat gpt를 활용한 멀티플레이 환경 구성 과정"에서 학습한 내용을3달이 지난 지금에서야 복습 겸 스파르타 유니티 과제에 적용시키는 과정을 담았습니다. 1. 멀
youcheachae.tistory.com
🎨 Agora를 통한 실시간 카메라 연결
2025.02.21 - [Unity] - [Unity][멀티플레이] #3. Agora를 사용한 카메라 인식
[Unity][멀티플레이] #3. Agora를 사용한 카메라 인식
→💡 해당블로그는 "Unity엔진과 Chat gpt를 활용한 멀티플레이 환경 구성 과정"에서 학습한 내용을3달이 지난 지금에서야 복습 겸 스파르타 유니티 과제에 적용시키는 과정을 담았습니다. 1. 멀티
youcheachae.tistory.com
깃허브
https://github.com/kimYouChae/Sparta_Metaverse
GitHub - kimYouChae/Sparta_Metaverse
Contribute to kimYouChae/Sparta_Metaverse development by creating an account on GitHub.
github.com