센로그
[Unity] 아이스 땡! 본문
◆ 프로젝트 개발 동기
컴퓨터 네트워크 수업을 듣고, 네트워킹 요소가 가미된 멀티 게임을 개발하고 싶어 함께 수업을 들었던 동기와 함께 본 프로젝트를 진행했습니다.
◆ 프로젝트의 목적
- 기존의 사실적이고 자극적인 FPS 게임들과는 다르게, 남녀노소 누구나 즐길 수 있는 귀엽고 색다른 FPS 게임을 만들고자 이러한 게임을 기획했습니다. 본 게임에서는 동물 캐릭터들이 상대를 눈사람으로 얼려버리는 총을 사용해 전투합니다.
◆ 프로젝트 개요
ㆍ 게임 제목 : 아이스-땡! (Ice-DDANG!)
ㆍ 플랫폼 : PC
ㆍ 장르 : 3D Multi FPS
< 스토리 >
얼음땡 놀이와 눈싸움에서 착안한 것으로, 동물 친구(플레이어)들은 북극의 하늘섬에서 눈 총을 쏘아 서로를 얼려 눈사람으로 만든다.
< 맵 >
< 게임 진행 방식 >
① 플레이어는 방을 만들거나 원하는 방에 참가한다.
② 게임이 시작되면 ICE 총을 이용해 상대를 얼린다.
③ 얼어서 눈사람이 된 상대에게 DAMAGE 총을 쏘면 눈사람이 부서지고, 킬이 적립된다. (죽은 플레이어는 3초 후 리스폰된다.)
④ 한 게임은 5분 동안 진행되며, 게임이 끝나면 킬 순위 상위 3명이 시상대에 오른다.
< 특징 >
- 마음에 드는 캐릭터로 자신을 표현할 수 있습니다.
- 플레이어를 눈사람으로 만들고 깨뜨릴 수 있습니다.
- 약한 얼음은 여러번 밟으면 깨집니다.
- 상위 3명의 플레이어는 시상대에 올라가며, 춤을 출 수 있습니다.
◆ 개발 기간 및 참여 인원
개발 기간 : 2023.02. - 2023.11. (8개월)
참여 인원 : 2명
◆ 프로젝트에서 나의 역할
- 전반적인 게임 시스템 구현을 팀원과 함께 진행하였습니다. (로비, 닉네임 설정, 매치메이킹, 플레이어 이동, 총 발사 동기화 등이 이에 해당합니다.)
- 캐릭터 커스터마이징 및 스킨 동기화를 구현했습니다.
- 총기 전환 및 눈싸움 매커니즘을 구현하였습니다. ICE 총에 맞은 경우 눈이 누적되고 눈사람으로 변하는 과정을 구현했습니다. DAMAGE 총에 맞은 경우 사망하고 킬/데스의 업데이트가 동기화 되도록 하였습니다.
- 킬/데스 현황을 실시간으로 저장하고, 랭킹 집계 및 시상식을 구현하였습니다.
◆ 기술 스택 및 사용한 도구
- Unity (C#)
- Photon Engine (PUN2)
- GitHub
◆ 프로젝트를 통해 얻은 성과와 경험 등 , 발생했던 문제 해결책
- 멀티 플레이 게임인 만큼 고려해야할 부분이 많았던 점이 가장 어려웠습니다. 기능 구현 시 동기화할 필요가 있는 기능인지 생각해야 했고, 어느 부분까지 로컬에서 계산한 후 원격으로 넘겨주는 게 좋을지 고민해야 했습니다. 예를 들어 반응 속도가 중요한 경우 원격으로 최소한의 정보만을 빠르게 전달하여 로컬에서 즉각적으로 반응하도록 하였습니다.
'프로젝트' 카테고리의 다른 글
Post Processing for text based 3D model (0) | 2024.01.21 |
---|---|
[Unity] Safe VR Subway Simulation with Reinforcrment Learning (0) | 2024.01.21 |
[Unity] 기상천외한 3D 플랫포머, <KingMini> (0) | 2023.05.22 |
[Unity] VR 스토리북 콘텐츠, <잠자는 숲속의 동물들> (0) | 2023.05.22 |
[Unreal] 한강 위 RTS 전략 게임, <잠실 대교는 왜 막히는거야?> (0) | 2023.05.22 |