▲ 넥스트 스테이지 강현우 대표

[인벤게임컨퍼런스(IGC) 발표자 소개] 인디 게임 개발사 넥스트 스테이지의 강현우 대표는 언리얼 엔진4를 사용해 모바일 게임 '다이스 이즈 캐스트', '프로젝트 아크' 개발, 2016년 언리얼 데브 그랜트에 선정된 바 있다. 지금은 비쥬얼 다트와 협력해 PS4 게임 '울트라 에이지'를 개발 중이다.

인디 게임 개발사 넥스트 스테이지는 지금까지 2개의 모바일 게임을 만들었으며, 지금은 비쥬얼 다트와 협력해 PS4 게임 '울트라 에이지'를 개발 중이다. 소규모 개발자들의 경우 강력한 에셋 스토어를 갖춘 유니티로 개발하는 분위기가 있음에도 넥스트 스테이지가 줄곧 언리얼 엔진만 사용하는 이유는 뭘까?

이번 강연에서는 넥스트 스테이지가 지금까지 언리얼 엔진으로 게임을 개발하면서 느꼈던 점들에 대한 포스트모템과 각종 팁을 공유하고 인디 게임 개발자들이 가진 언리얼 엔진에 대한 선입견을 타파하는 등 각종 노하우를 공유했다.



■ 강연주제: 인디 게임 개발사의 언리얼 엔진으로 모바일부터 PS4 게임까지 개발기

⊙ 모바일 게임 개발기


넥스트 스테이지의 첫 작품 '다이스 이즈 캐스트'는 원래 출시를 목표로 한 게임은 아니었다. 군 제대 후 혼자서 만들던 개인 프로젝트로 처음에는 모바일 플랫폼과 언리얼 엔진의 구조를 파악하는 데 중점을 둔 단순 프로젝트였다. 2013년에는 글로벌 게임 제작 경진 대회에서 은상을 받기까지 했지만, 그때도 여전했다. 그러다 어느 순간 프로젝트는 멈춰버렸다. 학업에 종사하고 외주를 하다 보니 프로젝트에 신경 쓸 겨를이 없던 거였다. 그렇게 2015년까지 출시는 물론, 개발 일정도 멈춘 상태가 됐다.

그러다 TIF(도쿄 인디게임 페스티벌) 2015에 참가하면서 상황이 바뀌었다. 게임을 시연한 유저들에게 좋은 반응이 있었고 이를 바탕으로 본격적으로 창업을 결심했다. 그러다 같은 달 정부지원사업에 선정되면서 본격적인 개발에 착수했다.

그렇게 되자 출시 일정과 개발 일정도 명확해졌다. 2016년 3월 베타를, 5월에는 정식 출시를 목표로 했다. 동시에 언리얼 엔진3로 개발하던 걸 언리얼 엔진4로 변경했다. 엔진을 바꾸면서 스크립트 코드를 C++과 블루프린트로 컨버팅해야 했는데 이렇게 되자 정해진 시간 안에 새로운 엔진으로 개발해야 한다는 부담감도 들었다.

물론, 언리얼 엔진3와 언리얼 엔진4의 개념, 구조가 비슷해서 쉽게 컨버팅 할 수 있었다. 10만 줄의 코드를 컨버팅 하는데 2달밖에 안 걸렸다. 여기에 새롭게 추가된 기능들도 도큐먼트가 있어 이해하기 수월했다.

하지만 개발이 수월한 것과 유저 피드백은 별개였다. 3월 베타 버전에서는 유저들에게 조작의 어려움, 불합리한 패널티, 복잡한 시스템 등으로 혹평을 받아서 2달간 시스템을 수정하는 데 매진했다. 물론, 유저들의 의견을 전부 다 수용하진 않았다. 조작이 어렵다며 자동사냥을 넣어달라는 요청이 많았는데 조작만큼은 포기할 수 없어서 대신 유저들에게 더 많은 기회를 주는 쪽으로 수정했다.

그리고 5월, 마침내 '다이스 이즈 캐스트'를 출시했다. 원스토어 유료 매출 1위, 구글 플레이 2위, 앱스토어 3위를 기록했으며, 2016년 언리얼 데브 그랜트를 수상하기까지 했다.


다만, 잘된 점만 있던 건 아니다. 언리얼 엔진4로 만든 첫 게임이다 보니 시행착오가 많았다. 우선 핵심 시스템을 최우선으로 개발하다 보니 서브 시스템은 나중에야 개발했고 그러다 보니 전체적으로 날림으로 개발됐다. 이 점은 결국 게임 시스템의 확장 부족이라는 단점이 됐다. 또한, 모바일에서 하드코어한 컨트롤 게임에 대한 딜레마도 느낄 수 있었다.

그래도 당시 '다이스 이즈 캐스트'를 개발한 경험은 많은 도움이 됐다. 소규모 팀에서 언리얼 엔진4로 해볼 수 있는 거의 모든 걸 이때 했다고 해도 과언이 아니다. 프레임 단위의 하드코어 액션을 구현하는 것부터 서버 연동, 비동기 레이드, 레벨 스트리밍 등을 알차게 배우는 기회가 됐다.

동시에 언리얼 엔진4가 얼마나 강력한 엔진인지를 깨닫는 기회가 됐다. 블루프린트의 경우 빠른 프로토타이핑이 가능했는데 C++로 만들었다면 3일 정도 걸렸을 거라 예상한 시스템을 불과 3시간 만에 만들 정도였다. 이외에도 쓰기 쉬운 다양한 툴의 존재와 소규모 팀도 잘 쓰면 유용한 프로파일링 툴의 존재도 알게 됐다.


이런 경험을 살려 차기작으로 '프로젝트 아크'를 개발했다. AI로 된 동료 2명과 거대한 몬스터를 잡는 헌팅 액션 게임이다. 전체적으로 몬스터 헌터보다는 캐주얼하면서 직접 조작하는 재미를 느낄 수 있는 게임을 목표로 했다.

'프로젝트 아크'는 새로운 도전으로 동료 2명의 AI와 거대 몬스터 AI, 그리고 '다이스 이즈 캐스트'보다 더 큰 맵이 목표였는데, AI 구현을 위해 많은 고민과 R&D를 했다. 이때 언리얼 엔진4의 BT와 EQS이 큰 도움이 됐다. '다이스 이즈 캐스트'에도 쓰긴 했었는데 이걸 더 발전시켰다.

2017년 1월 원스토어 출시 후 부족한 부분을 계속 업데이트했고 5월에는 구글 플레이로도 출시했다. 덕분에 구글 플레이 유료 순위 3위, 원스토어 순위 1위를 달성할 수 있었다.

'프로젝트 아크'를 개발하면서 BT와 EQS에 대해 배우게 됐고 덕분에 언리얼 엔진의 AI에 대해 좀 더 깊게 이해하는 기회가 됐다. 여기에 다양한 캐릭터들의 하이 스피드 액션을 구현할 수 있었는데 이때의 경험이 '울트라 에이지'의 초석이 됐다.


다만 아쉬운 점은 여전했다. 엔진을 제대로 사용하지 못해 성능 부담이 컸고 개발 기간을 짧게 잡았음에도 중간에 기획을 크게 바꿔 무리하게 진행할 수밖에 없었다. 여기에 서브 시스템이 부실한 점 등 전작의 실수를 답습한 부분도 있었다. 하지만 가장 큰 문제는 따로 있었다. 유료 모바일 게임 시장이 줄어들고 있었던 점이었다. 실제로 전작과 순위는 비슷했지만, 매출은 줄어서 '이대로 계속 유료 모바일 게임 시장에 도전해야 하나?' 하는 의문이 따라다녔다.

이쯤 되자 딜레마에 빠졌다. 넥스트 스테이지가 추구하는 건 하이 스피드 액션 게임이었는데 터치를 기반으로 한 모바일 플랫폼은 한계가 명확했다. 이뿐만이 아니다. 꾸준한 업데이트를 요구할 뿐 기기가 다양한 만큼 테스트양 역시 많았는데 소규모 개발팀에 있어선 이는 큰 부담으로 다가왔다. 새로운 플랫폼을 찾을 때가 된 거였다.


⊙ PS4 게임 개발기


새로운 플랫폼으로 넥스트 스테이지는 PS4를 선택했다. 하이 스피드 액션이 가능하며, 성능이 뛰어나고 구매력이 검증된 플랫폼이었기에 최적의 선택이랄 수 있었다.

물론, 신경 써야 할 점 역시 있다. 우선 법인 사업자 등록이 필요했고 개발하려면 PS4 DevKit을 사거나 대여해야 했다. 여기에 개발 컴퓨터 역시 사양이 더 높아야 했고 콘솔 유저들의 눈높이를 맞추기 위해선 1년 이상의 장기 프로젝트여야 할 필요가 있었다.

현재 넥스트 스테이지는 지금까지의 경험을 토대로 '데빌 메이 크라이'나 '니어 오토마타'같은 속도감을 추구한 액션 게임 '울트라 에이지'를 개발 중이다. 언리얼 엔진4로 개발 중인 세 번째 타이틀인 동시에 첫 PS4 프로젝트로 비쥬얼 다트와 협업해 넥스트 스테이지가 개발한 게임 중 최고의 퀄리티를 선보일 예정이다.


'울트라 에이지'는 넥스트 스테이지의 첫 PS4 프로젝트다 보니 여러모로 피드백이 절실했다. 지금까지 개발한 모바일과는 여러모로 환경이 달랐기 때문이다. 날 것 그대로의 의견이 필요했다. 그래서 넥스트 스테이지는 PS 아레나, BIC, TGS에 출전하면서 유저들의 다양한 의견을 들었고 현재 유저들의 피드백을 바탕으로 개발 중이다.

한편, '울트라 에이지'는 PS4로 개발 중인 만큼, 여러모로 넥스트 스테이지가 개발한 전작들과는 차이가 있을 수밖에 없었다. 큰 힘에는 큰 책임이 따른다고 하지 않던가. PS4가 딱 그런 느낌이었다. 모바일보다 성능이 높아서 여유롭게 개발할 수 있었지만, 유저들의 눈높이 역시 높았다. 기본적으로 PS4 유저들의 경우 언차티드 시리즈나 '라스트 오브 어스' 급의 퀄리티를 기대하고 게임을 한다. 카툰 렌더링 방식이라도 '드래곤볼 파이터즈' 정도는 돼야 하고 2D 도트 게임도 투박하지 않고 세련되면서도 극한의 부드러움을 추구하는 등 유저들의 눈높이를 맞춰야 한다. 실제로 '울트라 에이지'는 여러 행사에 출전하면서 그래픽 퀄리티에 대한 피드백을 가장 많이 받았을 정도다.


겉으로 보이는 그래픽적 요소 말고도 신경 쓸 점은 더 있었다. PS4의 메모리는 꽤 많은 편이었지만 그렇다고 무작정 고해상도 텍스처를 남용할 순 없었다. 결과적으로 모바일보다 더 세밀하게 메모리를 관리할 필요가 있었다. 다행히 언리얼 엔진에는 각종 프로파일링 툴이 존재해 이를 이용할 수 있었는데 강현우 대표는 '울트라 에이지' 개발 중반부터 진행해 추가비용이 발생한 만큼, 개발 초기부터 메모리 관리를 철저히 할 것을 강조했다.


⊙ 인디 게임 개발자들의 언리얼 엔진에 대한 오해


지금까지 게임 개발 경험에 대해 얘기하던 강현우 대표는 이어서 인디 게임 개발자들이 가진 언리얼 엔진에 대한 오해에 대해 입을 열었다. 많은 인디 게임 개발자들이 언리얼 엔진에 대해 배우기 어렵다, 무겁다, 개발 기간이 오래 걸린다고 말한다.

하지만 대부분은 언리얼 엔진을 처음 접하기에 갖는 선입견인 측면이 크다. 배우기 어렵다, 뭐부터 해야 할지 모르겠다는 것 역시 언리얼 엔진을 처음 접하기에 나오는 말들이다. 이에 대한 해결책으로 강현우 대표는 자신이 만들고자 하는 게임과 비슷한 게임의 샘플 프로젝트 분석과 라이브 트레이닝을 보면서 엔진에 대한 기초 지식을 쌓는 걸 추천했다.


이 외에도 프레임 워크의 경우 개발자들에게 강제되는 느낌이기에 족쇄로 여겨질 수 있지만, 잘 쓰면 개발 시간을 단축할 수 있다는 것과 C++을 무조건 공부하지 않고 처음에는 블루프린트에만 집중해도 된다는 등의 조언을 아끼지 않았다.

기본 세팅이 무겁다는 것 역시 언리얼 엔진을 잘 모르기 때문에 나오는 말이었다. 언리얼 엔진은 기본적으로 모든 옵션을 켜둔 상태로 동작한다. 즉, 개발자가 쓰는 기능과 쓰지 않는 기능을 명확히 파악하고 조절할 필요가 있다. 그렇지 않은 상태에서 언리얼 엔진으로 게임을 제작하곤 하니 무겁다는 얘기가 나오는 것이다.

결국 언리얼 엔진의 단점은 처음이라는 선입견이 주는 측면이 크다. 물론 툴들을 습득하고 프레임 워크 및 엔진 구조를 파악하는 데는 시간이 걸릴 수밖에 없다. 하지만 처음에는 뭐든지 시간이 걸리기 마련이다. 처음에 시간이 걸릴지라도 익숙해지면 장기적으로 더 빠른 개발을 보장한다.


⊙ 소규모 팀에서 언리얼 엔진 사용하기


소규모 팀에서 언리얼 엔진을 사용하기 위해선 우선 팀 규모에 어울리는 기획을 할 필요가 있다. 처음 사용하는 거라면 작은 게임부터 시작해 개발 프로세스를 이해에 중점을 둬야 한다. 그래야 팀 전체가 발전할 수 있다.

넥스트 스테이지도 그랬다. '다이스 이즈 캐스트', '프로젝트 아크'로 점점 프로젝트를 키웠고 그 덕분에 '울트라 에이지'를 개발할 수 있었다.

아울러 팀 규모에 맞는 개발 프로세스를 구축할 필요가 있다. 넥스트 스테이지는 나선형 프로토타입 모델을 채용했는데 빠르게 만들고 빠르게 평가하는 프로세스였다. 단, 프로세스에는 정답이 없다. 팀의 규모나 게임에 따라 다양한 방식이 적용되는 만큼, 자신의 상황에 최적화된 프로세스를 찾아야 한다.

또한, 소규모 개발팀에서 간과하는 버전 관리의 경우 언리얼 엔진에서 지원하는 SVN과 Perforce를 통해 관리하는 게 좋다. 1인 개발에게도 추천했는데 어제의 나와 오늘의 내가 다르기에 실수에 대한 롤백 기회를 제공하기에 꼭 이용하길 바란다고 강현우 대표는 강조했다.


마지막으로 강현우 대표는 협업, 끝없는 커뮤니케이션의 중요성을 역설했다. 소규모 팀에서 가장 중요한 게 바로 의사결정인데 작은 만큼, 모두가 동의하지 않으면 제대로 굴러가지 않는다고 말했다. 그렇기에 수평적인 관계를 유지하면서도 분명한 리더가 존재해 팀을 끌 필요가 있다.

이어 그는 "팀원 모두가 멋진 게임을 만들자는 열정과 이런 점들을 명확히 인지하면 소규모 팀에서도 멋진 게임을 만들 수 있지 않을까 생각한다"며 강연을 마무리했다.