Unity Photon2 Engine을 이용한 멀티플레이 플랫포머 게임 구현(1)

참여: 권용헌, 주윤성, 이윤섭


Jumper 디자인 계획서

 

- 과제 개발 요약

과제의 목표는 Unity Photon PUN2 엔진과, 생성형 AI를 활용한 2D 플랫포머 다중 멀티플레이 게임 구현하는 것이다. 플레이어들은 횡스크롤 방식으로 맵을 달리며, 가장 먼저 끝에 도달한 플레이어가 승리하고, 이후 제한시간 이내로 도착하지 못하는 플레이어는 탈락하게된다. 게임 중에는 랜덤 이벤트가 발생하여 플레이어에게 도움이 되거나 방해가 될 수 있는 요소가 존재한다. 또한 싱글플레이어 모드에서, 혼자 연습플레이를 할 수 있다.

 

- 과제 도출 과정

1. 게임 아이디어 도출

2. Unity를 사용하여 멀티플레이어 게임을 개발하는 방법 조사

3. 플랫포머 게임의 기본적인 구조 및 기능 조사

 

- 해당 개발과제의 필요성 및 기대효과

Unity 엔진을 활용하여 멀티 플레이어 게임을 개발함으로써 게임 개발 및 네트워킹 기술에 대한 이해를 높이고, 협업과 팀 프로젝트 경험을 쌓는 데 도움을 줄 것으로 기대된다.

 


#개발 #개발자 #포트폴리오 #멀티플레이 #photon #Unity #게임 개발 #캡스톤 디자인

Unity Photon2 Engine을 이용한 멀티플레이 플랫포머 게임 구현(2)

참여: 권용헌, 주윤성, 이윤섭


Jumper

- 프로젝트 요약

Unity Photon PUN2엔진과, 생성형AI를 활용한 2D 플랫포머 다중 멀티플레이 게임 구현하는 것이다. 플레이어들은 횡스크롤 방식으로 맵을 달리며, 가장 먼저 끝에 도달한 플레이어가 승리하고, 이후 제한시간 이내로 도착하지 못하는 플레이어는 탈락하게된다. 게임 중에는 랜덤 이벤트가 발생하여 플레이어에게 도움이 되거나 방해가 될 수 있는 요소가 존재한다. 또한 싱글플레이어 모드에서, 혼자 연습플레이를 할 수 있다.

- 개발 목표

Unity Phothon Pun2 + 생성형 AI활용
= 2D 플랫포머 다중 멀티플레이 게임
(횡스크롤+장애물피하기+레이싱시스템) +연습모드(싱글플레이)

 

- 개발 과정

계획 및 디자인 설계 > 담당기능 구현 > 베타테스트

 

- 핵심 기능

(1) 내비게이션 기능
(2) 랜덤 효과 부여
(3) 게임 내 채팅
(4) 캐릭터 선택
(5) 랜덤 맵 선택

 

- 인게임 화면

(1) 메인화면

메인화면 이미지

 

(2) 환경설정

환경설정 이미지
사운드 조절 바 기능(0%~100%)

 

(3) 싱글플레이어 모드(연습모드)

싱글플레이어 모드 이미지
캐릭터는 기본 2단 점프까지 가능
2단 점프 가능 이미지
싱글플레이 모드에서는 스스로 생각하여 움직이는 몬스터 추가!!
몬스터 추가 이미지
피니쉬 깃발에 도달하면 다음 스테이지로 이동하는 방식으로 구현.

 

(4) 멀티플레이 입장 화면

멀티플레이 입장 화면 이미지
닉네임 입력 후 접속하면 로비 화면으로 전환
로비 화면 이미지

 

(5) 게임 룸 화면으로 전환

게임 룸 화면 이미지
다른 플레이어가 이름을 입력해 방을 만들거나 'Quick Play' 버튼을 눌러 빠른 방생성 또는 참여 가능
방 생성 또는 참여 화면 이미지
만들어진 게임 방에 입장하게 되면 캐릭터 선택버튼, 채팅, 방에 있는 인원수 확인이 가능. 게임 시작버튼은 방을 생성한 방장에게만 클릭버튼이 활성화되게 구현.

 

(6) 채팅 화면

채팅 화면 이미지
서로 채팅을 주고 받는 모습.

 

(7) 게임 시작화면

게임 시작화면 이미지
게임 시작 후 5초 후 플레이어들에게 랜덤 효과 부여.
랜덤 효과 부여 이미지

플레이어를 따라 시작지점과 피니쉬지점 거리를 계산해 플레이어 위치를 확인시켜주는 내비게이션기능.

내비게이션 기능 이미지
인게임에서도 채팅가능
인게임 채팅 이미지
플레이어가 피니쉬 오브젝트에 닿으면 도착한 해당 플레이어의 동작을 멈추게 하고 10초의 카운트다운시작. 카운트다운이 종료되면 그대로 게임 종료.

 

(8) 게임 종료화면

게임 종료화면 이미지
게임 종료화면에서는 플레이어의 도착시간 그리고 계속하기 버튼과 나가기 버튼이 존재.
계속하기/나가기 버튼 이미지
계속하기 버튼을 누른 경우 해당 게임을 진행한 모든 플레이어들이 계속하기 버튼을 누른 게 확인되면 게임 재시작.

 


#개발 #프로젝트 #개발자 #c# #멀티플레이 #photon #Unity #유니티 개발 #캡스톤 디자인 #2d 게임 개발

Unity Photon2 Engine을 이용한 멀티플레이 플랫포머 게임 구현(Photon연결)

참여: 권용헌, 주윤성, 이윤섭


Jumper

- photon의 장점

(1) 최대 20명까지 동시접속 가능한 서버를 무료로 사용 가능하기 때문에 간단한 프로젝트 진행 시 사용하기 좋습니다.

 

- Photon 사이트

글로벌 크로스 플랫폼 실시간 게임 개발 | Photon Engine

EssentialPhoton Details Discover a summary of our product range, notable features, the power of the Photon Cloud, and our cost-effective pricing plans. HAVE A LOOK

www.photonengine.com

 

- 진행 방법

(1) Photon 홈페이지 접속

Photon 홈페이지 접속

 

(2) 회원가입 진행 후 관리 화면으로 이동 후 새 어플리케이션 만들기 클릭.

새 어플리케이션 만들기

 

(3) 멀티 플레이어 게임 부분 선택 후 Photon 종류는 Realtime으로 설정.

멀티 플레이어 게임 설정

 

(4) 서버이름과 어디에 사용될건지 알아볼 수 있게 간단히 설명 적고 생성.

서버 이름 설정

 

(5) 생성 후 관리화면을 클릭.

관리화면 클릭

 

(6) 어플리케이션 ID 선택 후 복사.

어플리케이션 ID 선택

 

(7) Unity로 접속 후 Package Manager선택.

Package Manager 선택

 

(8) My Assets부분 Asset Store에서 받아온 PUN2-FREE Import.

PUN2-FREE Import

 

(9) Import 후 Photon 폴더 선택 후 PhotonUnityNetworking 폴더 클릭.

PhotonUnityNetworking 폴더 클릭

 

(10) Resources 폴더 선택.

Resources 폴더 선택

 

(11) Resource Server Settings 파일 선택 후 App Id PUN 부분에 복사해 둔 ID 붙여 넣기.

App Id PUN 설정

(12) 연결 완료.

연결 완료 화면

#서버 #네트워크 #개발 #개발자 #photon #Unity #Assets #캡스톤 디자인 #photon 연결 #멀티플레이 게임 만들기