개발 낙서장

게임 제작 단계와 워크플로 본문

GameTheory

게임 제작 단계와 워크플로

권승준 2022. 3. 2. 23:40
※ 해당 글은 실전 게임 제작으로 배우는 언리얼 엔진 4 책을 보고 필기한 내용입니다.

1. 게임 개발 단계

현대 게임 개발은 점점 규모가 커지고 많은 비용이 들게 된다. 따라서 프로젝트 진행에 있어 착오가 생기거나 중단되었을 경우 막대한 타격을 입게 된다. 그렇기에 게임 개발에 단계를 나눠 점진적이고 체계적으로 진행하게 됐다. 각각의 단계를 페이즈라고 부른다.

  • 페이즈 1 : 만들고자 하는 게임을 간단하게 만들어봄(프로토타입)
  • 페이즈 2 : 만들고자 하는 게임의 일부분을 완벽하게 만들어봄(프리프로덕션)
  • 페이즈 3 : 페이즈 2에서 학습한 방법으로 남은 부분을 모두 만들어 완성(프로덕션)

각 페이즈의 진행은 반드시 절차적으로 진행해야 하며, 페이즈의 상황을 토대로 프로젝트 진행 여부를 결정해야 한다.

1.1. 프로토타입 단계

프로토타입 : 필요한 최소한의 것을 갖춘 테스트 전용 제품
게임의 핵심적인 특징과 요소들 중에서 기획서만으로 알 수 없는 것들을 추출해 제작한다.
게임 개발은 가설을 세우고 증명하는 과정이라고 할 수 있는데, 프로토타입이란 이 가설을 효율적으로 검증하기 위해서 만드는 것이다.
프로토타입 단계를 확실히 하지 않고 넘어갔다가 프로젝트 진행 도중 큰 문제가 생겨 프로젝트를 엎어야 할 상황이 생길 수도 있고 게임을 만들고 나니 재미가 없는 상황이 생길 수 있기 때문에 효율적이면서도 신중해야 한다.

1.2. 프리프로덕션 단계

프로토타입 단계에서 '게임이 재미있다.'라고 증명되면, 프로덕션 단계로 진행하는데 이 사이에 프리프로덕션 단계가 들어가면 좋다.
프로토타입 단계에서 게임의 재미를 증명했어도, 게임 제작의 워크플로는 증명하지 못했기 때문에 이 단계에서 여러 요소들을 구체화하는 작업이 필요하다.
예를 들어, 프로토타입 단계에서는 게임 내에서 밝을 때와 어두울 때를 나누는 것으로 '재미'를 만들 수 있는지 검증했다면 프리프로덕션 단계에서는 실시간으로 시간의 흐름을 구현하고 데이터를 만드는 방법과 조정 방법 등을 어떻게 할 것인지 검증하는 것이다.
즉 실제 제품에 가깝게 만들면서 워크플로를 검증하고 개선해나가야 한다.
프리프로덕션 단계에서 많은 회사가 '버티컬 슬라이스(Vertical Slice)'를 수행하는데, 버티컬 슬라이스는 게임의 주요 기능이 모두 탑재된 스테이지 하나를 최종 제품과 같은 품질로 만드는 기법이다.
또한 프로토타입 단계에서 만든 것들은 버려도 상관없지만, 프리프로덕션 단계에서 만들어진 프로그램, 툴, 파이프라인, 워크플로는 모두 프로덕션 단계까지 이어져야 한다.

1.3. 프로덕션 단계

프로토타입 단계와 프리프로덕션 단계를 거치면 게임 제작에 있어 대부분의 것들이 실체를 가지게 된다.
이 단계부터는 본격적으로 규모를 확장하고 인력을 추가한다.


2. 워크플로

2.1. 물은 위에서 아래로 흐른다

게임을 제작하려면 생각보다 많은 과정이 필수적으로 들어가야 한다. 내가 기술적으로 아주 뛰어난 개발자라 남들이 생각하지도 못한 기능을 구현할 수 있다고 해도 게임이 보기에 볼품없거나 재미가 없다면 사람들은 그런 기능이 있었는지도 모른채 게임을 삭제할 것이다.

만화 제작을 예로 들어보면, 만화는 게재하기 전에 전체적인 스토리, 캐릭터, 세계관 등 전체적인 설정이 필요하다. 이런 것들을 문서나 스케치로 정리한 후 제작을 시작해야 한다.
이러한 설정을 끝냈다면 바로 그림을 그리는 것이 아니라 한 화에서 각 페이지, 인물들의 행동이나 대사 등을 구상해야 하는데, 이것을 '네임'이라고 부른다.
네임이 완성되면 원고 작성을 하고 밑그림을 그린 후 선을 따고 채색을 해 완성하게 된다.

만약 설정 또는 네임 과정을 생략하거나 대충 하고 넘어간다면 스토리를 진행하면서 막히는 부분이 생기게 되거나 개연성이 어긋나는 등 부족한 작품이 될 것이다. 또한 밑그림을 그리지 않고 바로 선을 따다가 잘못 그리게 될 경우 한 페이지를 날리게 될 수도 있으니 사전작업은 굉장히 중요하다고 볼 수 있다.

2.2. 상류는 빠르고 좁으며, 하류는 느리고 넓다

컨셉과 설정의 결정, 네임과 같은 상류 공정은 기본적인 틀을 잡는 과정이기 때문에 피드백을 반복해서 빠른 속도로 테스트하는 것이 중요하다.

하류 공정은 콘텐츠의 가치를 실질적으로 만들어내는데, 많은 인력과 노력이 들어가며 시간도 오래 걸릴 것이다. 하지만 상류 공정에서 잘 마치고 내려왔다면 하류 공정 또한 비교적 매끄럽게 진행될 것이다.

2.3. 워크플로는 반대로 흐르지 않는다

워크플로의 원칙은 '상류의 공정이 완료되기 전까지 하류의 공정은 진행하지 않는다'이다.
반대로 말하면 '하류의 공정이 시작되었다면 상류의 공정을 변경하지 않는다'라고도 할 수 있다.

예를 들어 네임을 진행하는 도중에는 몇번이고 수정 작업을 거쳐도 상관없지만 네임이 끝난 후 그림을 그리는 도중 네임 과정에서 했던 것을 변경하려면, 지금까지 했던 작업이 날아가버릴 수 있다. 또한 네임 과정을 제대로 거치지 않고 그림을 그린다면 구도가 어색해지는 등 불완전한 작품이 될 것이다.

2.4. 공정에서의 재량

상류에서 하류로 흐른다고 표현은 했지만 상류가 갑이고 하류가 을이라는 것도 아니고, 그 반대도 아니다. 워크플로의 상류와 하류는 재작업을 줄이고 완성도를 높이기 위함이지 계급을 나타내는 것이 아니다.

2.5. 이터레이션

이터레이션 : 각각의 공정에서 만드는 것에 '개선할 부분을 찾고 수정하는 과정'의 반복

당연히 이터레이션의 횟수가 많아질수록 완성도는 점점 높아질 것이다. 문제는 이터레이션의 속도인데 똑같은 이터레이션을 하루에 100번 반복하는 것과 하루에 10번 반복하는 것은 품질에 큰 차이가 있을 것이다.

이터레이션을 빠르게 만들기 위해서는 좋은 툴과 파이프라인이 필요한데, 팀원들이 새로운 지식과 기술을 익혀 이터레이션과 관련된 관계자의 수를 줄이는 것도 중요하다.

빠른 이터레이션과 느린 이터레이션

좌측은 빠른 이터레이션, 우측은 느린 이터레이션의 예이다.
좌측에서는 레벨 디자이너 혼자서 맵의 형태나 이벤트 등을 제작해서 직접 테스트하는 형태이다. 혼자서 구상하고 테스트하기 때문에 비교적 빨리 진행할 수 있다.
우측에서는 레벨 디자이너가 맵의 초안을 만들고, 환경 아티스트가 맵을 만들고, 엔지니어가 이벤트를 제작한 후에야 테스트 플레이를 할 수 있다.


3. 스테이지 제작 워크플로의 예

게임의 장르에 따라 에셋을 만드는 파이프라인이 같을지는 몰라도 게임 제작 워크플로는 모두 다르다. 예를 들어, 3D 어드벤처 게임에서는 스테이지 설계가 게임의 재미를 만드는 주요 요소이기 때문에 레벨 디자이너 중심의 워크플로를 구성한다.
3D 캐릭터를 조작해 스테이지를 탐색하는 게임의 워크플로는 다음과 같이 진행될 것이다.

3.1. 컨셉 결정

플롯

먼저 스테이지의 플롯(구상)을 만든다. 예를 들어, 어떤 스테이지에서는 '약한 무기를 들고 약한 상대와 겨루며 조작감을 익힌다'라던지 '퍼즐을 풀어 봉인된 유적의 문을 연다. 적은 등장하지 않는다'와 같은 형태이다. 스토리 게임의 경우 해당 스테이지와 맞는 스토리 또한 결정해야 한다.

컨셉아트

플롯을 기반으로 컨셉아트를 만든다.

컨셉아트란 영화, 컴퓨터 게임, 애니메이션, 만화 등에서 사용하는 디자인, 아이디어, 분위기 등을 최종 제품으로 만들어내기 전에 시각적으로 표현해서 전달하는 것을 목적으로 하는 일러스트의 한 형태이다.

예를 들어, '오래된 사원에서 전투를 벌인다'라는 플롯을 가진 스테이지가 있다고 하자. 해당 플롯을 받은 하류 공정 사람들은 혼돈이 올 수 있다. 사원의 배경은 어디인지, 사원은 어떤 모습을 하고 있는지, 사원의 건축 재료는 무엇인지, 사원의 크기는 어느정도인지, 주변의 환경이나 날씨는 어떠한지 등 사람마다 생각하는 것이 다르기 때문에 플롯과 더불어 플롯을 구체적으로 시각화할 수 있는 컨셉아트가 필요하다.

또한 게임의 스테이지가 이른 단계에서 시각화되므로 레벨 디자이너와 함께 아트 에셋, 캐릭터의 액션 또는 애니메이션 등에 대해 논의할 수 있다.

3.2. 플레이 가능한 프로토타입 제작

상류에서 만들어진 정보를 바탕으로 레벨 디자이너가 플레이 가능한 스테이지를 제작한다.
이 공정에서는 컨셉아트를 완벽하게 재현할 필요가 없으며, 텍스쳐가 적용되지 않는 원기둥 등 간단한 메시를 사용해 테스트하면 되는데 이떄 만들어진 스테이지의 외형 때문에 이러한 레벨 데이터를 그레이박스라고 부른다. 추가적으로 그레이박스를 만드는 과정을 그레이박싱이라고 한다.

그레이박스 단계에서 가장 중요한 것은 '게임을 어떻게 플레이할 것인가'를 완성하는 것이다. 그레이박스는 앞서 예를 들었던 네임 작업과 비슷한 작업이므로 다른 부가적인 요소는 최소한으로 한다.

3.3. 메싱

메싱은 그레이박싱의 다음 공정이다. 그레이박스 스테이지에서 임시로 배치해놓은 지오메트리들을 정식 에셋으로 교체하는 작업이다. 이 과정을 거치면 실제 제품 품질과 가까워지게 되는데, 지오메트리가 크게 변하기 때문에 그레이박스에서 잘 작동하던 기능이 갑자기 작동하지 않게 될 수도 있다.

모노로크와 레고 블록

  • 모노로크 : 바닥, 천장, 벽, 기둥 등 모든 구조를 일체형으로 만드는 것

과거에는 PC의 성능이 좋지 않아서 최대한 적은 수의 폴리곤으로 물체를 그려야했기 때문에 모노로크 기법을 많이 사용했다.
하지만 이런 방법으로 현대 게임에 필요한 배경을 만들면 컬링 또는 LOD에 약하며, 작업 공정에도 큰 부담을 준다. 따라서 현대에는 레고 블록과 유사하게 배경의 물체를 작은 부분으로 나눠 그것들을 스테이지상에서 조립하고 배치하는 방법을 사용한다.
이 방법을 사용하면 스테이지의 변경에 용이하고 그레이박스의 임시 메시를 쉽게 변경할 수 있다. 추가로 컨셉아트 단계에서부터 에셋 제작 또는 주문을 할 수 있다.

3.4. 라이팅

메싱 공정이 끝나면 라이팅 공정에 들어간다. 라이트 아티스트의 라이트 배치, 라이트 조정과 테크니컬 아티스트의 머터리얼 개선을 함꼐 수행하는 과정이다.

이 공정은 정식 라이트 공정이다. 그레이박스 단계에서도 임시 라이트 작업을 하긴 하지만 플레이에 문제가 생기는지 간단하게 점검하는 용도이고 라이팅 공정에서는 시각적으로나 기능적으로나 완벽하도록 섬세한 작업이 들어간다.

3.5. 폴리시

폴리시(polish)는 '갈고 닦다' 또는 '세련되게 하다'라는 뜻의 영어 단어이다. 메시의 외형, 배치를 유지한 채로 전체적인 품질을 향상시키는 단계이다.

해당 과정에서는 완성된 라이팅을 기반으로 전체적인 화면의 디테일을 올리고, 파티클 이펙트와 사운드 등을 배치한다.

3.6. 워크플로의 반복

이러한 과정을 다 거치면 제품 완성일까? 아니다. 모든 공정을 거쳤다 해도 실제로 플레이해보면 초기 기획했던 것보다 완성도가 떨어지는 경우가 많다.

따라서 해당 공정의 관계자, 리더, 책임자가 완성된 게임을 체크하는 기간을 충분히 꼭 가져야 한다.

보편적으로 워크플로는 2번 이상 반복한다고 생각하고 일정을 잡는 것이 좋다.

Comments