가만히 들여다보면 로블록스는 신기한 개념의 제품이다. 로블록스를 홍보하는 광고나 영상, 뉴스를 보고 있으면 커다란 스케일을 가진 게임 같이 느껴지지만, 실제로는 게임을 개발할 수 있는 엔진이며 개발된 게임을 즐길 수 있는 플랫폼이다. 게임 개발은 게임을 좋아하는 사람이라면 한 번 정도는 상상해봤을 만한 꿈이지만, 사실은 상당한 난이도를 가지고 있기 때문에 시도도 하지 못하고 포기하거나 시도하더라도 금방 좌절하기 쉽다. 그럼에도 로블록스는 현재 수천만 개의 게임과 월 1억 6천만 명의 액티브 유저를 가진 플랫폼이 됐다. 로블록스를 서비스하고 있는 회사는 뉴욕 증시에 상장돼 있으며, 코로나 시대를 거치면서 집에서 즐길 수 있는 거리를 찾은 사람들로 인해 로블록스의 인기를 하늘 높은 줄 모르고 치솟고 있다. 그만큼 로블록스는 게임 개발이 쉬운 플랫폼이라는 의미가 된다. 이러한 로블록스야말로 진정한 의미에서 게임 개발 대중화의 최전선에 선 선봉장이 됐다.
로블록스가 이 정도의 인기를 끌 수 있었던 중요한 요인 중 하나는 쉽고 직관적인 개발 엔진과 서비스 구조다. 로블록스 플랫폼은 유저들이 상상을 게임으로 쉽게 구현하는 일에만 집중했고, 여기에 방해가 되는 것들을 과감히 없애 버리거나 축소했다. 반드시 필요하지만 기술적으로 복잡한 부분들은 로블록스가 직접 담당했다. 그래픽은 블록 모양을 기반으로 한 심플한 모습을 사용해 빠른 구현과 최적화를 우선시했고, 많은 기능들을 사용하기 편하게 엔진에서 구현했으며, 동시에 고급 게임플레이 로직에 필요한 프로그래밍 언어는 배우기 쉬운 언어인 루아(Lua)를 접목시켰다. 가장 중요하면서도 기술적으로 어려운 멀티플레이는 로블록스 회사가 직접 구현해 서비스를 제공하고 있다. 그만큼 로블록스의 모든 목표는 손쉬운 게임 개발에 맞춰져 있다.
또한 로블록스는 최근 글로벌 관심사로 주목받고 있는 메타버스의 중심에 선 플랫폼으로도 인정받는다. 최근 페이스북과 같은 굴지의 글로벌 회사들이 최근 사명을 Meta로 변경할 정도로 메타버스는 우리 미래의 큰 부분을 차지할 것으로 예상하고 있고, 저마다 그러한 세계를 만들어 내고자 대규모 투자와 노력을 쏟아붓고 있다. 이러한 노력은 최근 5년 사이에 본격적으로 일어났다. 하지만 로블록스는 메타버스의 개념조차 정립돼 있지 않던 2006년에 출시될 때부터 '유저가 개발하고 유저가 즐기는 가상세계 플랫폼'이라는 메타버스의 개념을 충실하게 구현하고 쌓아왔던 것이다.
이 책은 이러한 로블록스의 세계에 편하게 발을 들일 수 있게 해준다. 로블록스 엔진의 소개와 구조, 사용법과 유료화에 이르기까지 다양한 부분을 예제와 함께 설명하면서 로블록스의 개념과 기본 조작 방법을 머리에 착착 담을 수 있도록 구성돼 있다. 서점에서 이 책의 서문을 보고 있는 독자라면, 로블록스와 게임 개발의 세계에 들어서는 첫 발자국을 이 책과 함께 하길 바란다.
게임 개발의 민주화(democratization of game development). 최근 들어 서구권 게임 개발자들 사이에서 종종 회자되는 표현이다. 모바일 게임 시장과 유니티 엔진의 등장과 함께 더 이상 게임 개발은 소수 정예 기술자들의 영역이 아니다. 누구든지 게임을 개발하겠다는 열정과 배우겠다는 의지를 가지고 시간을 쏟으면, 모바일과 PC 플랫폼에 게임을 출시할 수 있다. 물론 지금도 배우기 쉬운 분야는 아니지만, 이전과 비교도 안 될 정도로 쉬워졌다는 사실을 부인할 개발자는 없다.
이 흐름에 가속도를 붙인 가장 큰 이벤트가 유니티 엔진의 등장이었고, 그 당시 언리얼 엔진은 높은 비용과 엔진 사용의 어려움 때문에 개발력과 자금이 충분한 개발사만 사용할 수 있는 물건이었다. 물론 그에 걸맞은 성능을 지녔기에 사람들의 칭송을 받은 수많은 게임들이 언리얼 엔진으로 만들어졌고, 그와 함께 언리얼 엔진에 대한 인식은 일반인은 범접할 수 없는 하늘 위의 세계로 자리 잡았다.
하지만 이제 모든 것이 바뀌었다. 언리얼 엔진이 무료화(일정 매출 이하일 경우) 선언과 함께 누구나 손댈 수 있는 게임 엔진이 되면서, 점진적으로 사용성도 손쉽게 변화해가고, 모바일 플랫폼으로의 출시도 전폭적으로 지원했다. 이런 움직임과 함께 수많은 소규모 개발사들이 언리얼 엔진으로 게임 개발을 시작했고, 사람들의 찬사가 쏟아진 <The Vanishing of Ethan Carter>나 <Abzu>, 국내 모바일 게임 <HIT> 같은 타이틀들이 시장에 나오기 시작했다. 언리얼 엔진의 변화와 함께 게임 개발 민주화의 마지막 장애물이 허물어진 것이다.
이제는 여러분의 차례다. 이 책을 집어 들고 이 글을 읽고 있는 당신이라면 오랜 시간 동안 머릿속에 그리고 있던 꿈의 게임이 이미 자리 잡고 있을 것이다. 그 게임은 언리얼 엔진으로 개발해야 할 만큼 환상적인 게임플레이와 그래픽을 담고 있을 것이다. 그리고 이 책은 꿈의 게임을 현실로 만들어주는 첫걸음이 될 것이다. 언리얼 엔진의 개념을 이해하고, 레벨을 만들고, 오브젝트를 다루고, 재질과 조명을 조작하고, 애니메이션과 AI를 통해 게임플레이를 배우고, 파티클과 사운드로 게임의 몰입도를 높이며, 지형과 시네마틱으로 완성도를 높이는 방법을 배우면서 게임 개발에 필요한 지식의 기반을 쌓게 될 것이다. 한마디로 언리얼을 처음 접하는 사람에게 이 책은 매우 훌륭한 입문서다.
본인은 인간은 누구나 창조를 갈망하는 동물이고, 그 도구와 결과는 무한하다고 생각한다. 여러분이 만들고 싶은 게 게임이라면 언리얼 엔진은 도구이고, 결과는 여러분이 그리는 게임이다. 이제 그 도구를 손에 익혀보자.
2016년 출시돼 세계를 휩쓴 <포켓몬 고(Pokemon GO)>를 기억하는가? 이 게임은 일반인들은 물론이고, 방구석과 컴퓨터 앞을 사랑하는 게이머들을 야외로 끌어내어 공전의 히트를 기록했다. <포켓몬 고>의 히트는 세계적으로 유명한 게임사의 브랜드 파워를 재확인해줬지만, 그보다 더 큰 의미는 증강 현실(AR, Augmented Reality) 게임의 가능성을 열어준 것이다. <포켓몬 고>가 나타나기 이전의 게임 시장에서 증강 현실은 단지 기술 테스트 수준에 머무는 느낌이 강했다. 특이하지만 시장성이 없는 기술로 취급당하고 있었기 때문이다. 하지만 증강 현실을 사용한 전무후무한 히트작이 나타남으로써 상황은 180도 달라졌다. 아류작들의 등장은 말할 것도 없고, 비슷한 포맷을 차용한 마케팅 앱들도 다수 개발됐다.
이 책은 이 거대한 흐름의 시작이 된 게임의 모습을 유니티에서 구현하게 해주는 내용을 담고 있다. 플레이어의 위치를 추적하는 GPS와 지도를 시작으로, 캐릭터와 입력 방식 구현, 몬스터 생성과 포획, 증강 현실 요소 적용과 상호작용까지 총 10장에 걸쳐 다양한 정보와 구현 방법을 설명한다. 책 속의 예제 게임인 Foody GO는 세계 정상급의 요리 실력을 자랑하는 몬스터들이 탈출해 세계를 떠돌고 있는 상황에서 플레이어가 이 몬스터들을 포획하고 식당들에 배치시켜 돈을 벌어들이는 구조로 진행된다. 테마와 설정이 다를 뿐 <포켓몬 고>와 여러모로 많은 유사점을 가지고 있는 셈이다.
이 책이 독자에게 주는 가장 큰 선물은 본인이 개발하고 싶은 게임이 더 이상 화면 안에 제한되지 않으며 실세계와 연결되는 증강 현실까지 펼쳐나갈 수 있게 해준다는 점이다. 많은 인기를 얻고 있는 RPG와 퍼즐 같은 장르의 게임을 개발하는 방법을 설명하는 책은 넘쳐나지만, 독특한 게임 요소의 개발을 다루는 책은 많지 않다. 게다가 다수가 이미 경험했음에도 아직 다양한 구현이 이뤄지지 않은 기술을 소개한다면 꽤 매력적일 수밖에 없다. 나 역시 한 사람의 게이머로서 다양한 방식의 새로운 경험을 주는 게임을 찾길 원한다. 그리고 이 책이 당신을 새로운 경험을 개발하고 전파하는 전달자로서 거듭나게 하는 계기가 됐으면 한다.
게임 개발을 업으로 삼고 있는 사람이라면 유니티 엔진이 현존하는 최고의 엔진 중 하나라는 사실에 대부분 동의할 것이다. 유니티는 초보자들도 어렵지 않게 배울 수 있으면서, 사용하기에 따라 AAA급의 게임까지 만들어낼 수 있는 엔진이다. 또한 PC와 모바일은 물론이고, 플레이스테이션과 Xbox를 포함한 콘솔로도 게임을 배포할 수 있다. 유니티 엔진이 5.x로 업그레이드되면서 완성도는 더욱 높아지고, 여러 가지 기능을 더해 강력함 역시 갖췄다.
이 책은 유니티로 게임을 만들고자 하는 개발자에게 예제를 통해 튼튼한 기반을 마련해준다. 이 책을 읽고 나면 본인이 만들고자 하는 장르에 상관없이 필요한 지식들을 끌어올 수 있는 바탕이 마련될 것이다.
누구나 쉽게 익히고 즐길 수 있는 2D 트윈 스틱 슈터 게임을 사용해 게임 개발에 필요한 여러 부분들을 하나로 엮어 이해할 수 있도록 가볍게 다루면서 이 책은 시작한다. 그런 후 UI(User Interface)를 붙이고, 배운 UI 지식을 사용해 새로운 클릭커 게임을 개발한다. 클릭커 게임이 끝나면 조금 더 난이도를 높여 무한 스크롤 게임과 슈팅 갤러리 게임을 통해 고급 기능들을 배운다. 순차적으로 난이도를 높이며 따라가 보면 어느 순간 3D 일인칭 액션 게임이 손에 들려 있을 것이다.
본인이 만들고 싶은 게임에 맞춰 필요한 엔진 기능을 찾아 적용하는 방법으로 게임을 개발할 수도 있지만, 엔진 능력을 충분히 숙지한다면 더욱 완성도 높은 게임을 만들 수 있다. 이 책이야말로 그런 역할을 하는 책이다. 예제로 나오는 각 프로젝트의 깊이나 완성도가 높지는 않지만, 다양한 장르와 기능을 다룸으로써 실제 본인의 게임을 만들 때 '아, 이렇게 하면 되겠구나!', '아, 이 부분을 더 파보면 되겠구나!' 하는 순간을 경험하게 해준다.
유니티를 통해 게임을 개발하길 원하고 새로운 5.x 버전의 기능들도 숙지하면서 초, 중급 실력에 맞는 책을 찾는다면, 지금 손에 들고 있는 이 책이 그 목마름을 해결해줄 것이다. 게임을 만들어 세상에 내놓는 일은 절대 쉽지 않지만, 이 책이 그 길로 가는 돌계단 중 하나가 되길 바란다.
게임 개발을 시작하는 사람들의 머릿속에는 말로 다 표현하기 힘든 꿈이 담겨 있다. 화려한 그래픽, 번뜩이는 게임 아이디어, 다른 게임에서는 볼 수 없는 기능 같이 나만의 세계를 본인의 스킬로 표현하고 싶어 한다. 하지만 매력적인 만큼 거기에 정신이 팔려 중요한 기본을 놓칠 때도 많다. 신나게 개발하며 많은 것을 쌓아 올린 후 나중에 가서 기본적인 필수 사항을 놓쳐 뒤늦게 많은 부분을 수정하거나, 최악의 경우 시간에 쫓겨 중요 부분을 빼놓고 출시하는 경우도 있다. 게임 개발에 경험이 있는 독자라면 지금 나와 함께 옛 경험을 떠올리며 쓴웃음을 짓고 있지 않을까.
이 책은 그 기본이 돼 주는 책이다. 유니티를 사용해서 모바일 게임을 개발하고자 하는 사람들에게 기본 방향을 보여주며, 동시에 나아갈 길의 바닥을 닦아준다. 화려한 게임으로 독자를 현혹하지 않고 가장 기본적인 디자인의 모바일 게임을 사용해 모바일 게임에 반드시 필요하고 고려해야 할 기능들을 예제와 코드를 통해 설명해준다. 실제로 총 12장의 내용 중에 게임 플레이에만 집중하는 장은 4개밖에 되지 않고, 나머지 8장은 모바일 개발의 고려요소에 할애했다는 점이 이 책이 어디에 중심을 두고 있는지 말해준다.
직업상 수많은 개발자를 만나 대화하게 되는데, 간혹 모바일 게임을 경험해보지 않은 개발자가 모바일 개발을 쉽게 얘기하는 경우가 있다. PC와 콘솔용으로 훌륭한 게임을 개발해본 경험이 있는 사람이 그러는 경우도 있다. 요즘은 엔진이 좋아져서 타 플랫폼으로 출시하는 과정이 수월하기 때문에 별것 아니라고 생각하는 것이다. 경력자 중에도 이런 사람들이 있는데 이제 막 시작하는 사람들은 어떻겠는가? 하지만 게임의 완성도는 플랫폼에 대한 고려가 반이라고 생각한다. 플랫폼이 다르면 기술적인 고려가 달라지고, 대상 유저도 달라지기 때문에 플레이 시간, 유저 모집, 수익 창출 방법, 테스트, 데이터 수집 등 모든 부분이 달라진다. 그리고 이런 모든 부분들이 게임에 모두 녹아들어야 비로소 제대로 된 제품이 나온다. 그래서 이 책은 게임이 모바일 화면에 어떻게 보일지, 수익은 어떻게 만들어 낼지, 유저들에게 게임의 어떻게 유기적으로 알리고 다시 찾아오게 할지, 플랫폼에 어떻게 출시할지 등에 더 집중한다. 게임을 단순히 게임 플레이의 집합체로 보지 않고 플랫폼에 최적화된 하나의 패키지로 보기 때문이다.
이 때문에 모바일 게임 개발을 처음 시작하는 사람들에게 이 책을 적극적으로 추천해주고 싶다. 초심자를 위한 책이기 때문에 가끔 깊이가 부족하다고 느낄 때도 있겠지만, 끝까지 정독한다면 본인의 모바일 게임을 만들 때 놓치는 부분 없이 하나의 패키지로 만들 수 있는 능력의 기반을 갖게 될 것이다.
무언가를 배울 때는 크게 두 단계가 있다고 생각한다. 첫 번째는 그냥 배우기만 하는 단계로 지금 내가 보고 있는 것이 어디에 어떻게 쓰는지도 모르겠지만 일단 마구 배우고 익혀 놓는다. 어떻게 보면 어둠 속에서 헤매는 사람처럼 가장 혼란스럽고 고통스러운 단계다. 두 번째는 어느 순간 큰 그림을 깨달으면서 그동안 배운 것들이 톱니바퀴처럼 연결돼 본인이 원하는 것을 마음대로 펼칠 수 있는 단계다. 생각이 바로 결과물이 되는 경험을 할 수 있는 신나는 단계로, 여기까지 도달하면 주위에서 '마스터'라 부르기도 한다.
이 책은 첫 번째 단계에서 두 번째 단계로 넘어가는 관문에 있는 책이다. 지금까지 쌓아 온 유니티에 관련된 지식을 한데 모아 어엿한 게임이라 부를 수 있는 결과물을 만들어내는 과정을 이 책을 통해 경험할 수 있다.
오락실에 가면 무조건 볼 수 있는 좀비 호러 건슈팅 게임 <하우스 오브 더 데드>라는 초히트작이 있다. 이 게임을 기반으로 B급 감성을 가미시켜 제작한 <타이핑 오브 더 데드> 게임이 있으며, 총 대신 키보드에 단어를 입력해 좀비를 처치하는 게임으로 나름의 인기를 누린 수작이다. 독자는 이 책을 통해 <타이핑 오브 더 데드>를 모티브로 한 좀비 호러 타이핑 액션 게임을 개발한다. 게임을 디자인하고, 필요한 에셋을 준비하고, 좀비가 어디서 튀어나올지 모르는 음침한 코너가 가득한 레벨을 디자인하고, 입력/전투 시스템을 구현하고, 보너스 시스템을 구체화한다. 여기에 더해 개발 전체를 바라봐야 하는 개발 관리와 효율화 그리고 다양한 플랫폼에 대해 고려할 사항도 다룬다. 간단히 말해 게임을 하나의 제품으로 완성하는 과정을 경험하게 된다.
게임은 창작물이며, 창작에 필요한 도구와 기술을 마스터했을 때, 비로소 본인이 그리는 모습이 나올 수 있다. 물론 게임마다 제작 방식이 다르기 때문에 이 책이 모든 것을 담을 수는 없겠지만, 본인이 중급에서 마스터 레벨로 올라가는 과정에 큰 도움이 될 것은 의심의 여지가 없다. 여러분의 게임 개발 라이프에 행운이 깃들길 바란다!