
- Unity
- Trash Collect
이 프로젝트는 고등학교 1학년 때 교내 발표 대회에 출전하기 위해 진행한 프로젝트로, 시간이 매우 부족했기 때문에 Unity에서 제공하는 3D 게임 튜토리얼인 'Tanks! Tutorial'를 활용해 새로운 게임을 만드는 것을 목표로 했다.
다음은 실제로 대회 당일 사용한 발표 자료의 내용이다.
게임 설명
W,A,S,D 를 통해 Player 1을 조종하고, 화살표를 통해 Player 2를 조종한다.
Space를 누르면 Player 1의 총알이 나가고, Right Shift를 누르면 Player 2의 총알이 나간다.
상대방에게 총알을 발사해 상대방의 체력을 먼저 0으로 만드는 사람이 라운드를 승리한다 (3번의 라운드를 먼저 승리하는 사람이 이기게 된다).
제작 동기
유니티를 처음 배울 때, 유니티 공식 웹사이트를 통해 공부하며 동일한 리소스를 사용해 아주 간단한 게임을 만들었다. 소프트웨어 대회를 위해 어떤 것을 만들지 구상하기 위해 그동안 만들었던 게임들을 살펴보던 중, 이 게임이 떠올라 기존의 게임에 게임성을 더 추가시키고 심화시켜 완전히 새로운 게임을 만들어야 겠다는 생각이 들어 제작하게 되었다.
게임 구성
게임은 ‘메인 화면, Instruction, FPS, TPS’ 로 구성되어 있다.
스크린 아무 곳이나 누르면 ‘메인 화면’으로 넘어가게 된다.
게임 원리
게임을 총괄하는 ‘GameManager’라는 오브젝트를 만들어 게임과 관련된 스크립트들을 모두 적용해 게임을 관리한다.
게임이 시작되면 한 플레이어가 3승을 달성할 때까지 ‘RoundStarting - RoundPlaying - RoundEnding’을 반복한다.
사용된 자료
제작 과정
한계 및 아쉬운 점
시간이 부족해 맵을 더 키우거나 2명 이상 같이 플레이할 수 있도록 만들지 못했다.
컴퓨터 한 대를 두 명이 공유하며 게임을 플레이해야 하기 때문에 조작감의 한계를 극복하지 못했다.
탱크가 총알에 맞았음에도 체력이 줄어들지 않는 버그 때문에 많은 시간을 투자해야 했는데, 알고봤더니 주석처리한 것을 제거하지 않은 것이 문제였다. 이러한 사소한 실수를 코딩을 하는 동안 자주 만들어 시간이 많이 빼앗긴 것 같아 아쉽다.
첨언
당시에는 윈도우로 게임을 빌드한 다음, USB에 게임 파일을 담아서 발표를 마친 다음 실제로 시연해보았다. 하지만 본 글을 읽는 독자들로 하여금 글을 읽으면서 게임을 시연해볼 수 있도록 itch.io에 WebGL 형식으로 업로드해 웹에서 직접 플레이해볼 수 있도록 구현했다.
실제 결과물:
마무리
시간이 고작 36시간 밖에 없던 상황에서 어떠한 결과물이라도 완성하기 위해 과거에 Unity를 공부하기 위해 만들었던 프로젝트를 수정해 그럴듯한 결과물을 만들었다는 점에서 꽤나 기특하고 참신한 발상을 떠올렸다고 생각한다. '젤다의 전설', '포켓몬', '아크 서바이벌' 등의 여러 게임들을 적절히 조합해 현재 인기가 굉장히 많은 'Pal World'를 만든 것처럼, 무조건 무에서 유를 창조해야 하는 것은 아니라고 생각한다. 좋은 아이디어가 이미 존재하면, 표절이 되지 않는 수준에서 참고해 자신만의 색깔로 재해석하는 것이야 말로 이미 너무 많은 창작물들이 만들어진 21세기에 창의력으로 생존할 수 있는 방법이라고 생각한다. 이러한 점에서 해당 프로젝트에 높은 점수를 주고 싶지만, 단순히 게임 플레이 방식을 수정하고 멀티 플레이를 추가하는 것 이외에도 다른 부분에서 차별성을 더 두었으면 좋았을 것 같다는 아쉬움이 든다.
참고로 해당 대회에서는 한 학기 동안 프로그래밍 동아리의 부장으로서 활동하며 만든 작품을 선보인 한 선배를 제외하고 2등인 우수상을 받을 수 있었다.