아이디어 선택하기
개발을 도중에 포기하지 않고 끝까지 해내기 위해선 만들게임을 잘 선정해야 한다. 내 경험상 이런 게임들은 세 가지 중 하나이다. 내가 만들고 싶은 게임, 만들어졌으면 하는 게임, 내가 잘 만들 수 있는 게임
"내가 만들고 싶은 게임"은 내가 생각했을때 게임 메커니즘이 재미있을 거 같은 게임이다. 흔히 Dream Game이라고도 하는 게임들이다. 이러한 게임들은 결과와는 상관없이 게임을 만드는 과정이 즐거운 게임들이다.
"만들어졌으면 하는 게임"은 만드는 과정을 즐겁지 않을지라도 만들어진 결과는 재미있을 것 같은 게임들이다. 예를 들어 GTA, 파이널판타지, 스타크래프트의 세계관이 합쳐진 게임 같은 것들 말이다.
"내가 잘 만들 수 있는 게임"은 만드는 과정이 즐겁지 않을 수도 있고 만들어진 게임이 흥미롭지 않을 수도 있지만, 게임을 생각했을 때 메커니즘이나 흐름을 어떻게 만들어야겠다는 생각이 잘 떠오르는 게임이다.
이 세가지범주 중 하나라도 속하는 게임들은 개발자의 흥미를 지속적으로 자극시키기 때문에 도중에 포기하지 않고 끝까지 개발하기 쉽다.
실질적인 게임개발 시작하기
아이디어를 정리하는 것은 게임 개발을 시작하는 것이 아니다. 디자인 문서를 작성하는 것은 게임 개발을 시작하는 것이 아니다. 팀원을 모으는 것도 게임개발을 시작하는 것이 아니다. 심지어 그래픽이나 사운드작업을 하는 것도 게임 개발이 아니다. "게임개발을 시작하기 위한 준비를 하는 것"과 "게임 개발을 시작하는 것"을 혼동하기 쉽다. 명심하라. 게임은 플레이 가능하여야 한다. 만약 당신이 플레이가능한 뭔가를 만들지 않는 한, 그것은 게임을 만든 것이 아니다.
모든 것을 직접 구현하려고 하지 마라
게임엔진을 만들 줄 안다고, 게임 개발을 위해서 게임엔진부터 개발해야 할 필요는 없다. 마찬가지로 리소스나, 툴을 모두 직접 만들어 쓸 필요는 없다. 에셋 스토어, 마켓 플레이스를 적극 활용하라. 이미 만들어진 툴이나 리소스를 사용하는 것을 죄인 것처럼 여기는 경우가 있는데, 활용할 수 있는 건 활용하는 게 좋다.
프로토타입
프로토타입부터 만들어라. 종종 프로토타입을 만들지 않고 곧바로 모든 것을 만들려고 하는데, 프로토타입을 만드는 과정에서 좋지 않은 로직이나 아이디어, 혹은 더 좋은 로직이나 아이디어들을 발견하게 되는 경우가 많다.
핵심 메커니즘을 재미있게 만들어라
핵심 메커니즘은 당신의 게임을 플레이할 유저들이 가장 오랫동안 경험할 부분이다. 이 핵심 메커니즘이 당신의 게임개발을 주도하게 해야 한다. 이 핵심 메커니즘을 확실하게 만들어 놓으면 나중에 게임개발에 도중에 스케일을 다운시키거나 불필요한 기능들을 잘라내기가 쉬워진다.
따분한 것은 정상이다
게임개발과정은 지루하고 재미없는 것이 정상이다. 게임개발은 놀이가 아니고 일이다. 게임을 계획하거나 프로토타입을 만들 때는 생각하지 못했던 지루한 일들(메뉴 만들기, 화면전환, 세이브&로드)이 있다. "물론 내가 생각하고 있는 핵심 메커니즘이나 월드맵 같은 재미있는 부분도 있지만", 이런 지루한 작업들에 너무 많은 시간을 할애하지 않기 위해 프로젝트 계획단계에서 스케일을 적절하게 정하는 것이 중요하다. 지루한 부분도 소홀히 해서는 안된다. 이 지루한 부분이 게임을 더욱더 완벽하게 만들어주는 부분들이기 때문이다.
데드라인을 정해라
데드라인을 정하면 개발의 방향성과 스케줄표의 실현가능성을 더 진지하게 고민하게 된다. 게임잼에 참가하는 것도 한 가지 방법이다. 게임잼에 참가하면 강력한 데드라인이 생길 뿐만 아니라 좋은 성적을 거두면 명예와 물질적 보상도 따를 수 있다.
밀어붙여라
개발을 하다가 어떤 기능을 개발하다가 지식이 부족해서든 리소스가 없어서든 어떠한 이유로 막힐 때가 있다.이럴 때 당장 해결이 불가능하다면 너무 오래 붙잡고 있지 말고, 다음 기능으로 넘어가라. 모든 기능을 완벽하게 만들지 못하더라도 핵심 기능들이 대충 돌아가게 만든 다음에 전체적인 윤곽을 보는 것이 중요하다. 또한 완벽하지 않더라도 기능을 계속개발하는 것이 내가 뭔가를 계속 만들어내고 있기 때문에 동기부여 측면에서도 도움이 된다.
정신적 건강과 육체적 건강을 보살펴라
게임개발을 하다 보면 자신의 건강을 소홀히 하기 쉽다. 몸과 정신이 건강하지 못하면 내가 꿈에 그리던 게임을 개발하고 있더라도 전혀 신나지 않을 수 있다. 이러한 건강상태는 내가 만들고 있는 게임에도 영향을 주게 된다. 결국 더 좋은 게임을 만들기 위해서는 몸과정 신도 보살펴야 한다.
다시 시작하지 마라
개발을 하면서 여러 가지를 배우게 되고 공부하게 되면서 더 좋은 구조나 패턴들을 알게 된다. 그리고 내가 개발 중인 게임의 코드를 보면 이미 스파게티코드가 되어 새로 배운 것들을 적용하기 막막한 경우가 있다. 그럴 때면 차라리 처음부터 다시 시작하는 게 낫겠다고 생각하면서 프로젝트를 갈아엎는 경우가 있다. 하지만 이는 잘못된 생각이다. 몇 주 후면 또다시 정확히 똑같은 상황에 봉착하는 것을 볼 수 있을 것이다. 코드는 결코 완벽할 수 없다. 새로 다시 시작하기보단 리팩토링을 자주 하는 것이 좋다. 만약 더 좋은 구조나 아이디어가 있지만 그걸 적용하기 위해 프로젝트를 다시 시작해야 하는 수준이라면 그냥 다음에 개발할 게임에 적용해라.
자르고 빼내라
스케줄보다 뒤 쳐 저 있는 경우, 자신의 게임에서 정말 필요한 것이 무엇인지 생각해 보라. 그리고 무엇을 스케줄표에서 잘라낼 수 있는지 생각해 보라. 만약 시간과 리소스에 제한이 없는 상황에서 게임을 만든다면 정신없고 재미없는 게임이 나올 것이다. 제한된 시간과 리소스가 목적성이 보이는 게임을 만든다. 핵심 코어 컨셉을 제외한 모든 것들을 정말 필요한 것인지 고려해라. 사공이 많으면 배가 산으로 간다고 했다.
이미 포기했다면 다음부턴 스케일을 줄여라
이 포스팅은 도중에 포기하지 않고 게임개발을 끝내는 법을 말하지만 이미 진행 중이던 프로젝트를 포기하고 이 글을 보는 사람도 있을 것이다. 만약 최근 진행 중이던 프로젝트를 포기했다면 다음 프로젝트부턴 스케일을 줄여라. 프로젝트를 포기한 후 한동안 다시 포기하지 않기 위해 여러 기술들을 공부했을 것이고 전 프로젝트의 실패로부터 많은 것을 배웠다고 생각하며 다음 프로젝트의 스케일을 더 키우는 경우가 있다. 이는 잘못된 생각이다. 자신이 만들고자 하는 게임에 일부분에 집중해서 개발해 보라. 만약 그 일부분도 끝내는데 어려움을 느낀다면 스케일을 줄이고, 또다시 반복하고 계속 줄여라.
마지막 10퍼센트
마지막 10퍼센트가 모든 것을 좌우한다고 사람들은 종종 말한다. 게임개발에서 마지막 10퍼센트는 디테일을 말한다. 전투시스템을 개발하는데 일주일이 걸렸지만 타격감이나 이펙트 등등 부가적인 디테일들을 개발하는 데는 한 달이 걸릴 수도 있다. 대부분 이런 디테일들을 개발하는 것은 재미없는 일이지만 이 디테일들이 모든 것을 바꾼다. 이 디테일에 시간을 제대로 쏟아붓는다면 단순히 콘텐츠와 아이디어가 범벅된 게임을 재미있고 중독성 있는 게임으로 탈바꿈시킬 수 있다.
본 포스팅은 아래의 원문을 번역하고 개인적인 생각을 덧붙인 글입니다.
Finishing a Game
As I work towards completing my own game, I've been thinking a lot about finishing projects in general. I've noticed that there are a lot of talented developers out there that have trouble finishing...
makegames.tumblr.com
'Game Theory' 카테고리의 다른 글
솔로/인디 게임 개발을 준비하는 방법 (0) | 2023.08.18 |
---|---|
게임 개발을 위한 컬러 이론 (2) | 2023.08.16 |
로그라이크와 로그라이트는 어떻게 다른가? (0) | 2023.03.17 |