내가 가장 아끼는 개인 프로젝트이자, 제일 자랑스러운 퍼즐 게임!
정해져있던 GIGDC 팀이 해체되고 친구들은 이미 팀을 구한 상태이고, 새롭게 팀을 꾸려 팀장이 될 자신은 없어 '혼자 뭐라도 해봐야지'라는 생각에 만든 게임이다. 그때 조금 더 용기를 가졌더라면, 지지가 조금 더 풍성한 게임으로 탄생했을 수도 있었겠다는 생각에 아쉽기도 하다.
배운 내용을 간단히 정리해보자.
- 완벽하지 않아도, 자꾸 피드백을 요청해야 한다! 부끄러워하지 말자.
- 구조를 구상할 땐 UML을 이용하자.
- 일정 관리는 정말 중요하다. 가장 중요한 건 꺾이지 않는 마음.
- 다양한 경험은 값지다!
피드백을 요청할 줄 아는 사람이 되다!
1인으로 개발하니 기획 부분에서 많은 어려움이 있었다. 특히 스테이지의 난이도, 게임의 사용자 편의성 등을 혼자서 고려하기엔 부족했다. 완성되지 않은 게임을 보여주는 것이 부끄럽고, 게임에 대한 비판이 무서워 사람들에게 피드백을 받으려 하지 않았다. 지금 생각하면 참 바보 같긴 하다...
어느 날, 게임 화면을 본 옆 짝이 적극적으로 개선점과 피드백을 주었고 짝의 의견을 적용하니 게임이 훨씬 발전한 게 피부에 와닿았다. 사소하지만, UI 내 텍스트의 조사를 고친다거나, 포탈 뒷면을 검정색으로 한다거나, 상호작용이 가능한 물체는 위에 오브젝트를 띄우는 등에 피드백을 얻을 수 있었다.
그때부터, 부끄러움보다 게임을 더 좋은 방향으로 발전시키고 싶다는 생각이 앞섰다. 따라서 많은 친구들, 선생님들께 적극적으로 피드백을 요청했고 돌아온 개선점들을 하나하나 수정해나갔던 것 같다. 그 과정에서 게임의 유저 편의성, 기획, 그래픽, 연출에 대한 폭넓은 완성도를 올릴 수 있었다.
이 프로젝트로 인해서 피드백이 공격이 아닌 건설적 비판이라는 것임을 알게 되었다. 그러니, 부끄럽더라도 피드백을 요청해 게임을 발전시키는 게 정말 똑똑한 일인 것이다. 게임은 유저와 같이 만들어나가는 것이고, 후에 팀 프로젝트를 할 때 적극적으로 피드백하고 수용할 수 있게 발전했다.
객체지향적 프로그래밍을 하다!
내면의 개선도 있었지만, 캐릭터 이동과 행동을 연결짓는 부분에서는 객체지향적 프로그래밍을 나름 멋지게 한 것 같다는 생각이 든다.
CharacterBehaviour을 상위 클래스로 각 행동들이 자식으로 있다.
시뮬레이션을 돌릴 때, 상속받은 순수 가상 함수를 호출함으로써 각자의 행동을 한번에 호출하는 구조를 짜느라 정말 고민했고, 그래서 더 마음에 들었다.
이렇게 Enum값으로 대상과 행동을 매개변수로 해 객체를 생성해 넣어주어서...
시뮬레이션을 돌릴 때 이 코드 한 줄로 캐릭터의 모든 행동들을 계산한다! Enum의 이름과 스크립트의 이름이 같아야만하는 번거로운 점이 있지만... 그래도 상속성과 다형성, 객체지향 프로그래밍에 맞게 객체에 기능과 역할에 따라 잘 분리한 것 같아서 기분이 좋다. 코드도 갈끔하고!
물론... 실행 속도나 메모리 면에서 효율적인 코드는 아니겠지만... 아무렴, 깔끔한 코드를 짰다는 것에 만족했다.
다음엔 클래스 다이어그램을 대강이라도 먼저 그리고 로직을 짜야겠다는 생각이 들었다. 처음에 빈 코드에서부터 시작하려니, 막막한 게 이만 저만이 아니었던 게 기억에 남는다.
일정 관리의 아쉬움
나름 부지런하고 꾸준한 편이라고 자부하지만, 2달 가까이 되는 시간 동안 오롯이 프로젝트에 집중하는 건 정말 힘들었다.
여러 수행 평가에, 프로젝트에, 포트폴리오 준비에... 사실 시간이 없었다는 건 대부분 핑계이지만... 혼자 하다 보니 서로를 독려하고 쪼아줄 사람도 없어서 조금 마음이 흐트러진 것도 있다. 그래서 GIGDC 제출까지 목표가 30 스테이지였지만, 26 스테이지에 그치고 말았다.
이 프로젝트를 통해서 일정 관리의 중요성을 느끼고, 이후 프로젝트들은...
일정 관리에 정말 많은 노력을 들였다. 서로를 쪼아주기도 하고 독려하기도 하며 작업 속도가 느려지지 않도록 애썼다.
이런 노력들을 이 프로젝트에도 했다면, 조금 더 풍성하고 재미있는 게임이 될 수 있었을텐데... 아쉬운 마음이 남는다. 꺾이지 않는 마음의 중요성을 배운 프로젝트였다.
다양한 경험을 해봤다!
공모전에는 무조건 게임이 가장 중요하다고 생각한 나에게, GIGDC를 모두 혼자서 준비하는 경험은 정말 신선하고 새로웠다.
기획서 쓰기, PR 영상, 소개 영상, 영상 편집 등등... 이 모든 게 혼자 준비해야 한다니... 당시에는 정말 막막했다.
기획서를 쓰며 기획 지망 친구들의 고충을 잘 알게 되었다. 고민하고 신중해서 써내려간 문장들이 통으로 마음에 들지 않는 일도 잦았고, 명확하고 정확한 단어가 떠오르지 않는 일도 정말 많았다. '완벽하지 않아도 피드백을 받아본다'라는 교훈을 얻었기 때문에, 기획 지망 친구들뿐만이 아니라 선생님, 개발 지망 친구들에게 기획서에 대해 많은 도움을 받았다.
PR, 소개 영상 또한 3분~5분짜리 영상을 2시간을 준비해서 찍었던 게 기억이 난다. 자꾸 NG가 나는 바람에 시간이 오래 걸렸다.
뿐만 아니라, 게임의 연출에도 신경을 썼다. 특히 스타트 화면에서 임팩트를 주고 싶어 애니메이션을 공들여서 넣은 경험도 참 새롭다.
게임의 핵심 특징을 잘 반영한 센스있는 스타트 화면이라고 생각한다. 단순히 게임의 루프 뿐만이 아니라, 연출에도 신경쓴 적은 처음이라 새로운 경험이었다.
이 경험을 잘 갈고 닦아...
동아리 프로젝트에서도 바다와 하늘을 넘나드는 핵심 콘셉트를 활용한 스타트 애니메이션을 만들 수 있었다 ㅎ_ㅎ
이렇게 코딩뿐만이 아니라, 여러 경험을 하며 다른 파트에 대한 이해와 내 게임을 더욱 빛나게 하는 방법에 대해서 잘 알 수 있었다. 혼자 처음부터 끝까지 공모전을 준비한 경험은, 정말 어느 것과도 맞바꿀 수 없을 정도로 소중하다.
'개발한 게임들 > 지지는 아무 생각이 없다' 카테고리의 다른 글
[Project] 🤖 지지는 아무 생각이 없다 코드 구조 (0) | 2022.11.25 |
---|---|
[Project] 🤖 지지는 아무 생각이 없다 (0) | 2022.11.09 |