본문 바로가기
대외활동/[KSEB] 팀프로젝트 게임 개발 일지

[KSEB] 게임 도메인 팀프로젝트 시작 및 첫 주차 진행상황

by RucA 2024. 7. 7.
728x90
반응형

 

여러 개인적인 사정 덕분에 정신 없는 6월이 지나가고, 7월부터 좋은 기회를 얻어 2달간 팀프로젝트로 게임을 개발할 수 있는 기회가 생겼다. KSEB은 K-Software Enpowerment Bootcamp의 줄임말로, 인하대, 경기대, 성균관대 대학생들이 협력하여 도메인별 팀프로젝트를 진행한다. 도메인이 여러 개 있지만, 나는 그 중에서 게임 도메인을 신청했고 인하대 대학생이 가장 많기에 인하대에서 진행한다...!

 

KSEB 관련 내용은 프로젝트가 성공적으로 완성되면(?) 올리도록 하겠다. 사실 올리겠다 해놓고 밀린게 좀 많지만, 8월말까지 일정이 꽉 차있어서 쉽지 않다. 

 

 

개인적인 이야기는 이만 줄이고, 앞으로는 1주일마다 우리 팀에서 만들고 있는 게임의 개발 현황을 개발 일지처럼 차근차근 올리려고 한다. 모두 다 다른 지식과 경험을 가지고 있기 때문에, 전문적인 팀 개발은 아니지만 그렇기에 특유의 인디스러움이 나타날 수 있지 않을까 기대하고 있다. 우리 팀이 선택한 게임 장르는 플래포머 + 로그라이크 + 2D(도트)로, 비슷한 게임으로는 던그리드와 산나비가 있다. 

 

던그리드 산나비
던그리드
산나비

 

 

분위기나 감성적인 측면은 던그리드처럼, 액션과 조작감, 플레이 방식은 산나비처럼 만드는 것을 이상적인 목표로 하고 있다. 개발은 유니티 + C#을 통해 진행할 예정이며, 기본적으로 무료 에셋을 활용하며 플레이어와 같은 극히 일부만 직접 도트로 찍을 예정이다. 주로 총기 액션과 와이어 액션을 다룰 생각이지만, 우선 다음주에 있을 1차 중간 발표를 위해 게임의 기본적인 틀과 장르적 요소부터 갖추려 한다. 이후 천천히 우리 게임만의 차별점을 추가할 계획이다. 아래는 첫날에 실제로 발표에 사용한 우리 게임의 차별점 내용이다. 이제 나에게 피피티 제작을 시키진 않을 것 같다. 

 

2D 도트
로프 액션
총기 액션
성장 지향
2D 도트 로프 액션 총기 액션 성장 지향

 

 

게임 개발 현황


 

게임 개발 현황
게임 개발 현황

 

 

이번 주 동안 팀프로젝트 게임 개발에서 내가 맡은 역할은 적 구현과 사운드 시스템, UI 시스템 추가이다. 그동안은 혼자 개발해서 간과했었는데, 이번에는 각 부분을 팀원끼리 쪼개서 개발하다보니 객체 지향 프로그래밍이 몹시 중요해졌다. 가능한 한 내가 구현한 파트가 다른 파트와 의존이 최소화되도록 노력했다.

 

 

슬라임 3종


녹색 슬라임 적색 슬라임 청색 슬라임
녹색 슬라임
적색 슬라임
청색 슬라임
주요 길목을 점거, 체력과 공격력은 낮으므로 빠르게 제거하는 것을 유도 주요 길목에서 플레이어가 접근 시 돌진 공격, 체력과 공격력이 높기에 회피 및 전략적으로 전투하는 것을 유도 플레이어가 일반적으로 접근하기 어려운 곳에서 원거리 공격, 와이어(로프)를 활용한 기동 및 전투를 유도

 

슬라임 프리팹 3종 구현을 하는 것에 집중했는데, 맵에 별도로 구역을 설정하거나 플레이어를 참조하는 것이 아니라 슬라임 자체적으로 주변 환경을 인지해서 FSM 방식으로 동작하도록 노력했다. 주요 로직은 유니티 카테고리에 올릴 예정이다. 주로 애니메이션 이벤트 트리거를 통해 구현했다. 슬라임 3종을 통해, 플레이어가 게임의 특성을 인지하고 앞으로 어떻게 플레이하면 좋을지 파악할 수 있도록 컨셉을 잡았다. 플레이어가 단순히 적을 모두 제거하기만 하는 것이 아닌 적의 특성을 인지하고 플레이어가 활용할 수 있는 무기와 이동 방식을 모두 활용할 수 있도록 유도하는 것이 목적이다. 

 

 

플레이어 정보 UI


플레이어 정보 UI
플레이어 정보 UI

 

좌측 상단에 플레이어 캐릭터와 플레이어의 Hp, Exp 등을 나타내는 기본적인 UI를 제작 및 연동했다. 유니티 내의 이미지를 활용해 다소 밋밋하게 보인다. 이후 던그리드의 UI처럼 겉에 도트 디자인을 추가할 예정이다. 적의 hp 표시 및 타격데미지 표시도 열심히 구현 중에 있다.

 

 

사운드 시스템


사운드 시스템
사운드 시스템

 

사운드 시스템은 사운드 매니저에 DB를 등록한 후, 필요 시 정적으로 호출할 수 있도록 구현했다. 이 때 사운드를 실행하는 주체로 사운드 노드라는 프리팹을 생성하고 사운드 실행 종료시 반환하는 형식으로 했으며 이 과정에서 오브젝트 풀링을 통해 가능하면 최적화를 이룰 수 있도록 했다. 

 

 

아직 구현 못한 기능이 너무 많지만 조금씩 넣다보면 완성할 수 있을 거라 믿는다. 다음 주는 우리 게임에서 핵심적으로 밀 기능인 로프(와이어) 액션을 다 함께 구현할 예정이다.

728x90
반응형