어쩌면 게임 개발 툴 중에 가장 저평가받는 툴은 바로 '돌발적인 시도'일지도 모릅니다. 스톨른 스틸 VR(Stolen Steel VR)은 중세 시대의 검투장을 소재로 한 VR로 명작 Thief의 느낌이 물씬 풍기는 게임이지만, 애초에 제작 자체가 이런 '돌발적인 시도'를 기반으로 하고 있습니다. 본래 스톨른 스틸 VR은 멜버른의 개발자 조 윈터그린(Joe Wintergreen)과 임프로프트 게임즈(Impromptu Games)가 잠입 게임을 제작하려다가 개발 방향을 급선회한 것으로, 원래는 잠입 게임의 주인공과 보초들 간에 전진과 후진, 찌르기와 막기 등을 활용한 심도있는 칼싸움을 구성하던 도중에 얼떨결에 만들어진 것이라고 합니다.
“트위터에서 누군가가 콘텐츠를 VR 템플릿으로 이식하는 작업이 꽤나 쉽다는 이야기를 하는 것을 보고, 불현듯 이 게임의 아이디어를 떠올리게 되었습니다. ” 윈터그린은 회상했습니다. “플레이어 캐릭터의 손에 칼 한 자루만 쥐어주면 모든 것이 딱 들어맞는 게임이 되더라고요. 물론 이후로도 처리해야 할 작업이 꽤나 많았지만, 이 게임의 개발은 시작부터 굉장히 즐거웠습니다.”
스톨른 스틸 VR은 이렇게 만들어 졌습니다. 이후 스팀 발매까지 이어지는 짧은 개발 과정에서는 잠입 AI의 개조와 깨진 병에 적용할 피직스, 그리고 가지 아이템 추가 등이 이루어졌습니다.
대련용 AI 개발
스톨른 스틸 VR의 대련 상대로 등장하는 AI는 본래 잠입 장르 게임을 위해 설계된 것이기 때문에, 이들은 대련 상대라는 원래 용도보다 훨씬 능동적인 모습을 보여주며, 본래 설계된 목적에 맞게 플레이어를 집요하게 쫓습니다.
“해당 AI는 스톨른 스틸에서 본연의 90%도 제대로 보여주지 않는다고 말하겠습니다.” 윈터그린은 인정합니다. “하지만 돌발 상황에서만큼은 다릅니다. 이따금 플레이어가 AI의 시야에서 벗어날 경우, AI는 곧바로 플레이어를 쫓기 위해 가장 마지막으로 발견되었던 자리나 시야부터 추적하는 모습을 보여줍니다. 이런 모습이 플레이어들에게 ‘우와, 이 정도로 공을 들인 AI를 보게 될 줄은 몰랐는데’라고 여겼으면 좋겠네요.”
멋진 콧수염과 넓은 챙의 투구를 쓴 보초들은 윈터그린이 처음으로 제작한 AI입니다. 하지만 이 작업은 이내 윈터그린이 제일 좋아하는 부분이 되었습니다. 이 보초들의 AI는 언리얼 엔진 4의 비주얼 스크립팅 시스템, 블루프린트로 구성하였으며, 이 블루프린트는 “코딩을 전혀 할 줄 모르더라도 굉장한 프로그래머처럼 작업을 할 수 있게 해주는” 시스템입니다.
“AI 제작이란 정말 흥비로운 작업이었습니다. ” 개발자는 말합니다. “꼭 어린 애들에게 이런 저런 것을 가르쳐주는 느낌입니다. 그러면 이 아이들은 꼭 돌발적인 행동을 보여주어서 깜짝 놀라게 해주죠.”
윈터그린의 AI를 블루프린트로 볼 경우 각 노드들의 조밀한 연결이 뻗어나가는 거대한 플로우차트같은 느낌입니다. 이 노드들을 통해 해당 보초들에게 특정 상황에 대해 어떻게 반응할 것인지 행동을 부여합니다. 예를 들어 보초가 누군가를 발견하게 된다면, 보초들은 자기 자신에게 몇 가지 질문을 던지게 됩니다. 내가 이미 전투 상황에 처해있나? 그렇다면 아무것도 하지 않습니다. 지금 시야에 들어온 사람이 어둠 속에 있나? 그렇다면 못본 척 합니다. 내가 호감이 가는 사람인가?그렇다면 인사를 합니다.
“물론 이미 인사를 하지 않은 상황에서만 인사를 해야겠죠. 볼 때마다 인사를 한다면 바보스러운 느낌을 주게 될테니까요.” 윈터그린은 덧붙입니다. “이런 작업을 굉장히 편리하고 빠르게 해 줄 수 있었습니다. 또한 다른 방식으로도 이런 작업을 해줄 수 있더라고요.”
언리얼 엔진 4는 현재 AI를 두 부분으로 나누어 구성하는 신기능, '비헤이비어 트리'를 지원하고 있습니다. 한 부분은 블랙보드로, 엔진에 캐릭터의 메모리를 저장하는 부분입니다. 다른 한 부분은 트리로, 캐릭터의 결정들을 만든 다음 실제로 발동하는 부분입니다. 이 기능은 실제로 윈터그린이 블루프린트로 그럭저럭 만들어낸 인공지능 차트와 비슷하지만, 훨씬 간단하게 작업할 수 있습니다.
“비헤이비어 트리로 다시 작업을 한다면 알아보기가 훨씬 쉬웠을 것 같습니다.” 윈터그린은 말합니다. “저도 제가 구성한 거대한 블루프린트 그래프를 좋아하기는 하지만, AI가 복잡해질수록 실용성은 확실히 떨어지게 됩니다. 이 거대한 구조 자체가 유지하기가 정말 벅차죠.”
병 깨뜨리기 설계
윈터그린이 자신의 친구와 함께, 깡패들의 암살을 피해 병원에서 도망친다는 내용의 초기형 VR 프로토타입을 개발한 적이 있었습니다. 이 VR에서 플레이어는 자신의 손만을 사용해 휠체어를 밀어서 탈출해야만 했죠.
“그 VR에서 만들었던 기본적인 인터랙션으로는 위스키 병을 들어서 잔에다 위스키를 따르는 것이었습니다.” 윈터그린은 회상합니다. “그런 다음에는 빈 병을 들어서 어딘가에 내리쳐 깨뜨리거나, 병실로 들어오는 사람에게 집어던질 수도 있었죠.”
따라서 윈터그린은 스톨른 스틸에서도 이런 빈 병을 무기로 활용하고 싶다는 욕망을 도저히 저버릴 수 없었습니다. 실제로 이 기능을 개발하는 데에는 기술적인 문제가 전혀 없었습니다. 스톨른 스틸 속에서는 공병을 아무 오브젝트에나 적절한 힘으로 내려치기만 한다면, 기존의 병은 삭제되고 유저의 손에는 깨진 병만 남게 됩니다. 오브젝트에 내리치는 순간 사방에 유리 파편이 튀는 효과를 보여준 다음, 이와 동시에 날카로운 부분을 무기로 활용할 수 있는 깨진 병 아이템을 플레이어의 손에 남게 스폰시키는 것입니다.
“제가 게임 속에서 가장 좋아하는 요소입니다.” 윈터그린은 말했습니다. “트레일러만 보아도 아시겠지만, 저는 예고편 영상에서만 족히 병 5개를 깨뜨렸습니다.”
이런 기능을 구현하는 것보다 훨씬 까다로운 문제는, 바로 병에 어느 정도의 힘을 가해야 비로소 깨뜨릴 수 있는지 기준을 결정하는 일이었습니다.
“대략 300 뉴턴 가량의 힘을 가하면 병을 깨뜨릴 수 있습니다. 이 피직스라는 게 굉장히 어려운 요소라 딱 잘라서 수치를 제공해드리는 것이 굉장히 힘듭니다.” 개발자는 덧붙여 설명합니다. “그냥 이 정도면 되겠구나, 싶은 수준을 적당히 알아내서 활용하시면 됩니다.”
물론 예외적인 경우도 있습니다. 예를 들면 병은 칼과 부딪히면 칼의 속도나 힘에는 관계없이 무조건 깨지게 되죠. 또는 병을 4번 내려치면 무조건 꺠지게 됩니다. 따라서 플레이어들은 병을 들고 씨름을 하다 보면, 그 동안 얼마나 병에 힘을 가했든 간에 언젠가는 병을 깨뜨릴 수 있게 됩니다.
“어떤 사람들은 VR 플레이에 너무 몰입한 나머지, 실제 컨트롤러로 뭔가를 칠 수도 있다는 사실을 까맣게 잊을 정도로 자신감에 넘치게 됩니다.” 윈터그린이 설명합니다. “이 부분을 항상 염두에 두셔야 합니다. 저도 실제로 벽을 몇 번이나 치기도 했고요.”
물러서지 말고 싸워라
최근 윈터그린은 게임 속에 채소 아이템 가지를 추가했습니다. 이 가지는 무기로 사용할 수 있으며, 언리얼 엔진 4에서 제공되는 메시 분할 기능에 영감을 얻어 만들어진 것입니다. 이 기능은 실제로 3D 및 피직스 효과를 완전히 지원하여 Fruit Ninja 등에서 활용되었습니다. 이처럼 가지와 깨진 병은 스톨른 스틸 VR에서 완전한 성능을 발휘하는 무기로 등장합니다. 물론 세심하게 설계된 보초 AI는 무장 해제를 당할 경우 주저없이 병과 가지라도 집어들고 다시 덤벼옵니다.
“정말 예쁜 가지를 넣었습니다.” 윈터그린은 애정어린 목소리로 말했습니다. “다음에는 셰프 시뮬레이터를 만들어 볼까봐요.”
스톨른 스틸 VR은 스팀에서 출시되어 있습니다. 언리얼 엔진 4는 현재 무료로 이용하실 수 있습니다.
에디터 주석: PCGamesN에서는 언리얼 엔진을 기반으로 제작된 환상적인 게임을 선정하여, 해당 게임의 개발자들과 인터뷰를 하고 "Making It in Unreal" 시리즈로 제작하고 있습니다. 에픽게임즈는 기사 제작에 어떤 영향력도 행사하지 않습니다.