그린툰 최신 접속주소바로가기
100% 동네 섹파 구하기 바로가기 [AD]토토커뮤니티 NO.1 먹튀검증 토토사이트 추천 바로가기

46회 - 애니메이션 엔진

황제국이 FPS 프로토타입을 제작하기로 하자, 이진수는 물리 엔진 개발을 잠시 홀딩하고 애니메이션 엔진 개발로 넘어갔다. 물리 엔진과 마찬가지로 애니메이션 엔진도 완전할 필요는 없었다. 어디까지나 프로토타입 제작이 가능할 정도로 최소한의 기능만 필요했다.

그렇다고 정말 임시방편으로 대충 만들어선 곤란하다. 나중에 제대로 만들어야 할 때, 앞서 개발한 부분을 죄다 버리고 다시 만들어야 하는 불상사가 생길 수 있기 때문이다.

‘게임쇼용 데모 만든다고 그런 짓 많이 했었지.’

황제국은 문득 옛날 생각이 났다. 게임쇼에 참가해 개발 중인 게임 데모를 선보이는데, 완성된 게임에서는 구현할 수도 없는 이펙트나 장면을 억지로 넣는 일이 허다했다. 출시 전에 어떻게든 이슈를 만들려고 무리수를 두는 것이다.

가뜩이나 개발 일정도 빡빡한데, 실제 게임에서 쓰지도 못할 내용을 개발하고 있으면 자괴감에 빠진다. 출시 이후 데모만큼 퀄리티가 나오지 않으면 게이머들은 속았다고 화를 낼 게 뻔하다. 눈 가리고 아웅일 뿐인 걸 뻔히 알면서도 이슈 만들기에 급급한 게임사는 어쩔 수 없이 이를 반복한다.

황제국은 이를 방지하기 위해 애니메이션 엔진 개발은 이진수와 공동으로 설계했다. 나중을 고려해 필요한 기능과 파트를 빠짐없이 구성해 놓고, 그중에서 프로토타입 개발에 필수적인 부분만 골라서 먼저 개발하기로 했다.

“프레임 레이트(frame rate, 초당 이미지 횟수)는 30fps(frame per second, 프레임 레이트 단위)로 하는 게 좋겠죠? 가장 무난하게요. 확장 가능성은 열어 두고요.”

“30, OK.”

프레임 레이트는 게임에서 동작의 부드러움을 결정한다. 30fps는 1초 동안 30개의 이미지를 재생한다.

보통 영화나 애니메이션의 프레임 레이트는 24fps. 모든 스크린은 이렇게 초당 수십 개의 이미지를 연속으로 보여주어 ‘움직인다’라고 착각하게 만든다. 뇌를 속이는 것이다.

당연히 프레임 레이트가 높으면 높을수록 움직임은 부드러워진다. 황제국이 돌아오기 전에는 컴퓨터 사양이 갈수록 좋아지면서 프레임 레이트가 144인 게임도 흔해졌다. 그러자 보통 주사율(1초에 표시할 수 있는 이미지 횟수)이 60Hz 였던 모니터도 스펙 경쟁이 붙어 240Hz 까지 가능한 고주사율 모니터까지 등장했다.

특히 프레임 레이트와 주사율에 민감한 게 FPS 게이머들이다. FPS 게임은 총알 한 방에도 죽을 수 있기 때문에, 매 순간이 긴장의 연속이다. 게이머들은 아주 사소한 움직임도 놓치지 않으려 한다.

황제국도 할 수만 있다면 30fps가 아니라 60, 90, 120fps로 동작하는 게임을 만들고 싶었다. 그렇지만 98년에는 아무리 최신 컴퓨터를 사용해도 1초에 120번씩 이미지를 그려내는 게임을 만들 수 없었다. 그랬다간 배경도 뭐도 아무것도 없는 허허벌판에서 싸워야 할 판이었다.

“최고의 기술을 지향하되, 현실을 잊지 말아야죠.”

이는 황제국의 철칙이고, 동시에 뉴퀘스트의 개발 방향성이었다. 이진수는 사람 캐릭터에 적용할 애니메이션 계층 단계를 물었다.

“어, 얼마나 자세하게 나눌까? 드드.”

“아주 단순하게요. 머리, 몸통, 팔, 다리 이렇게 4개만요. 팔은 위아래로 나눌 필요도 없어요. 관절 없이 그냥 총을 들고 내리는 것만 일단 표현해요. 다리만 무릎 관절 넣어서 달리는 것처럼 해주세요. 그것마저 없으면 무슨 강시 같으니까요.”

“크으~, 강시 오랜만에 들어보네. 어렸을 때 진짜 좋아했었는데.”

옆에서 듣고 있던 오종석이 팔을 쭉 뻗고 발끝으로 통통 튀면서 강시처럼 동방을 돌아다녔다. 그의 정신 사나운 강시 흉내는 차현주가 포스트잇 부적으로 빠르게 제압당했다.

이진수는 황제국의 요청에 따라 우선 게임에서 움직일 수 있는 인간 캐릭터 클래스를 만들었다. 객체마다 움직이는 방식이 다르기 때문에 비슷하게 움직이는 부류끼리 카테고리를 만들어야 한다. 지금은 오직 프로토타입 제작을 위해서라 움직이는 건 인간과 탄환이면 충분했다.

객체 클래스마다 움직이는 방법에 따라 다양하게 계층을 나눈다. 간단하게 하자면 몇 단계로도 되지만, 복잡하게 하면 수십, 수백 가지로 나눌 수 있다.

특히 인간은 손과 얼굴 표정과 같이 섬세한 움직임이 많다. 동작도 걷기, 뛰기, 쪼그리기, 점프하기, 기어가기 등등 아주 다양하다. 이 모든 것을 전부 구현할 수는 없기 때문에, 게임에서 자주 나올 동작을 고려해 잘 선택해서 최대한 자연스럽게 만드는 것이 핵심이다.

완벽한 게임을 만들겠다며 욕심을 부리자면 끝이 없고, 그러면 게임 개발에 한없이 많은 인력과 돈이 들어가게 된다. 모든 일이 언제나 선택과 집중의 문제였다.

이진수는 황제국과 애니메이션 엔진 설계 논의를 마치고 개발에 들어갔다. 황제국 역시 이진수가 개발한 렌더링, 물리, 애니메이션 엔진을 구동시킬 코어 시스템 개발을 서둘렀다. 그리고 동시에 프로토타입을 돌려 볼 배경과 캐릭터, 무기 등을 대충 3D 모델링으로 만들었다.

“와! 이 수수깡, 오랜만이다. 이거 보니까 진짜 프로토타입 만드는 게 실감이 나네. 그런데 이번에는 입체 수수깡이네?”

“응, 3D 수수깡이야. 업그레이드 좀 했지.”

황제국이 3ds 맥스로 인간을 모델링하는 모습을 보고 차현주가 반가운 듯 말했다. 2D로 비트맵 이미지를 그리는 연습 중인 차현주는 황제국이 3D로 작업하는 모습을 유심히 살폈다.

화면에는 입체 도형들이 사람 형태로 연결되어 있었다. 머리가 되는 구체와 몸통이 되는 사각형 박스, 그리고 원통형 팔다리가 전부였다. 어디가 앞이고, 어디가 뒤인지도 알아볼 수 없을 지경이라 머리에 눈코입을 그려 넣었다.

그는 이어서 총싸움의 무대가 될 배경을 만들었다. 하나는 첫 장면에서 쓰일 기차 내부였고, 또 하나는 길 양옆으로 건물 몇 개가 늘어선 작은 마을이었다. 당연히 기차나 건물에는 아무 장식도 없었다. 그저 무슨 물체인지 알아 볼수만 있을 정도였다. 그리고 최소한의 색과 질감이 느껴지는 텍스쳐를 입혔다.

“진짜 재주 많아. 제국이 넌 언제 이런 걸 다 익힌 거야? 나 3D 그래픽도 가르쳐 줄 거지?”

“3D? 글쎄. 이건 나도 진짜 기초 중의 기초만 아는 거라 뭘 가르치고 할 것도 없어. 3D 모델링 배우려면 전문 학원을 가는 게 빠를 거야.”

“그래? 그럼 좀 생각해 봐야겠네.”

“응. 보통 게임 아트 하는 사람들도 원화랑 3D 모델링 동시에 하는 사람은 거의 없어. 둘이 워낙 달라서.”

‘사실은 원화가랑 3D 모델러가 앙숙인 경우가 많지’라고 황제국은 속으로만 생각했다. 현재 차현주의 포지션은 100% 원화가 쪽이었다. 전통 서양화를 공부하고 그리는 차현주는 상상력이 뛰어나고, 이를 시각화하는 재능이 있었다.

황제국이 보기에도 차현주는 게임 원화가, 그중에서도 특히 컨셉 아티스트 쪽이 가장 알맞아 보였다. 하지만 그건 어디까지나 지금의 관점이었다. 차현주가 앞으로 무엇을 공부하고, 어떻게 발전해 나갈지는 알 수 없었다.

프로토타입 제작을 위한 과정이 착착 진행되었다. 이진수는 황제국이 만든 ‘3D 수수깡’ 데이터를 받아서 간단한 포즈를 취할 수 있도록 만들었다. 수수깡이 팔을 앞뒤로 흔들거나, 무릎을 구부리는 등 작은 동작이 가능해졌다.

이어서 걷고, 달리는 동작을 구현하는 과정에 착수했다. 그런데 수수깡이 무릎을 구부린 채 걷는 모습이 몹시 부자연스럽게 보였다. 이진수는 여러 가지로 수정해 봤지만 좀처럼 나아지지 않았다. 지나가다 모니터를 본 오종석이 말했다.

“와, 선배님. 이 녀석 걷는 게 꼭 걸음마도 못 배운 프랑켄슈타인 같은데요. 그르르르르~~~!”

오종석이 수수깡의 부자연스러운 움직임을 흉내 내며 입으로 괴물 소리를 냈다. 다들 오종석을 보며 피식피식 웃고 있는데, 이진수의 표정이 잔뜩 일그러졌다.

“그그그극!”

이진수가 갑자기 자리에서 벌떡 일어나더니 문을 벌컥 열고 동방을 나가버렸다. 오종석은 그대로 굳어버렸고, 동방 분위기도 순식간에 얼어붙었다.

“뭐지? 나, 나 실수한 건가?”

“진수 선배, 화 많이 났나 봐. 저러시는 건 처음 보는데.”

“그러게, 나도 처음 보는데.”

황제국도 이진수가 사라진 문을 바라보며 말했다.

“야, 제국아 나 그럼 어떡하지? 얼른 쫓아가서 싹싹 빌까? 아니면 화 풀릴 때까지 때려 달라고 할까?”

오종석이 안절부절못했다. 황제국은 이진수의 모니터를 바라봤다. 모니터에서는 3D 수수깡이 계속해서 어정쩡하고 불편한 모습으로 걷고 있었다. 황제국은 뭘 해야 할지 알 것 같았다.

“별수 없네. 몸으로 때워야지.”

“뭐? 진짜? 나 그럼 진수 선배님 화 풀릴 때까지 맞는 거야? 많이 아플까?”

“맞긴 누가 맞아. 종석아, 너네 집에 캠코더 있지? 그거 내일 좀 가져와 봐.”

“어? 그거 아빠가 엄청 애지중지하는 거라 좀 어려운데.”

“그래? 그럼 대신 맞을 거야? 저래 봬도 진수 선배님이 태권도 유단자라는 소문이 있던데.”

“진짜? 아니야. 가져올게. 그것만 있으면 돼?”

“일단 가져와 봐.”

다음 날, 오종석이 집에서 8mm 비디오테이프를 쓰는 아날로그 캠코더를 들고 왔다. 이진수를 제외한 뉴퀘스트 멤버들은 공학관 주차장에 모였다. 모두 뭘 하려는 건지 궁금했다.

“종석아! 내가 이걸로 찍고 있을 테니까 주차장을 앞뒤로 왕복해봐. 카메라 의식하지 말고. 평소처럼.”

“어, 알았어.”

오종석이 주차장을 걷기 시작했다. 누가 봐도 카메라를 의식해서 잔뜩 힘을 주고 걷고 있었다.

“괜찮아? 잘 나와?”

“제국이 말 못 들었어? 힘 빼고 평소처럼 걸으라구!”

“아! 알았어! 말로 해! 말로!”

오종석은 차현주에게 등짝을 맞고서야 평소의 걸음으로 돌아왔다. 그는 주차장을 몇 번 왕복하고, 다음에는 황제국의 요청으로 달리기를 했다. 황제국은 그 모습을 다양한 각도에서 담았다.

다음에는 차현주, 전유진, 황제국이 차례로 카메라 앞에서 주차장을 걷고, 뛰었다. 모두 기록을 마치자 황제국은 그제야 이유를 설명했다.

“아무래도 진수 선배님이 걸음걸이가 어떻게 되는지 매커니즘 파악을 어려워 하는 거 같아.”

“걷는 거? 걷는 거 그냥 다리가 앞뒤로 교차하면 되는 거 아닌가?”

“그렇지 않아. 우린 의식하지 못하고 걷지만 걸을 때 온몸을 자연스럽게 움직이잖아. 그 움직임이 저마다 달라. 사람마다 걸음걸이라는 게 있잖아.”

“하긴 그러네.”

걷는 동작은 모든 움직임 중에서도 기본 중에 기본이었다. 걷는 동작을 자연스럽게 표현하려면 사람의 동작을 따라 해야 하고, 그러려면 먼저 정확한 움직임을 알아야 한다. 황제국은 이진수가 여기서 생각지도 못한 벽에 부딪힌 거라 추측했다.

시간이 10년쯤 지나고, 자본이 충분하다면 이런 문제는 모션 캡처 기법으로 충분히 커버할 수 있었다. 전문 배우를 고용하고, 다양한 표정과 동작을 따서 이를 적용하면 된다.

하지만 현재 뉴퀘스트에는 모셥 캡처를 활용할 기술도, 자본도 없었다. 현재는 캠코더에 뉴퀘스트 멤버들이 걷고, 뛰는 모습을 샘플로 담아 동작을 연구하는 자료로 쓰는 방법이 최선이었다.

황제국이 촬영을 마친 비디오테이프를 오종석에게 내밀었다.

“자, 이거 진수 선배님한테 전해 드리면서 사과드려.”

“내, 내가?”

“우리도 너 보고 웃은 죄가 있으니까 뒤에서 같이 할 거야. 그래도 사과는 네가 해야 맞지.”

“그렇지. 응, 그게 맞지. 맞어.”

오종석은 테이프를 가슴에 꼭 안고 동방으로 향했다. 어제 그대로 나가 돌아오지 않았던 이진수가 다시 아무 일 없었다는 듯 자기 자리에서 수수깡과 사투를 벌이고 있었다.

오종석과 멤버들이 들어왔지만 이진수는 고개도 돌리지 않았다. 오종석이 어떻게 말을 거나 망설이자, 황제국이 그의 등을 살짝 떠밀었다.

“저······. 선배님.”

“······.”

이진수는 여전히 고개도 돌리지 않았다. 잠시 망설이던 오종석은 떨리는 손으로 비디오테이프를 내밀었다.

“저, 이거. 이거 받아주세요. 그리고 어제는 정말 죄송했습니다.”

“웃어서 죄송해요.”

“죄송합니다.”

오종석이 허리를 꾸벅 숙여 사과했다. 다른 멤버들도 뒤에서 함께 사과했다. 이진수는 비디오테이프와 단체 사과에 도리어 당황했다. 오히려 화가 났을 때보다 더 불안해 보였다. 황제국이 비디오테이프를 가리키며 말했다.

“선배님. 걸음걸이를 파악하는 게 생각보다 쉬운 일이 아닌 거 같아요. 여기에 저희 네 명의 샘플이 있으니까 이걸로 동작을 연구해보세요. 그리고 애니메이션에 적용하면 될 거예요.”

“어, 어어···?”

“<페르시아의 왕자> 해보셨죠? 그 게임을 조던 메크너라는 개발자가 만들었는데 자기 동생을 비디오로 찍어서 동작을 분석하고 애니메이션으로 만들었다고 하더라구요. 그 아이디어를 좀 빌렸어요.”

“으으음.”

이진수는 고개를 끄덕이더니 비디오테이프를 들고 동방을 나가 버렸다. 오종석과 다른 멤버들은 그 모습을 불안하게 바라보았다.

“어쩌지. 아직 화 안 풀린 거 같은데?”

“아니야. 괜찮을 거야. 걱정하지 마.”

“그럴까?”

“그래~. 내가 보기에도 진수 오빠는 누구랑 달라서 속이 넓어. 그런 일로 삐질 사람이 아니야. 걱정 마, 오종종.”

평소보다 처져있는 오종석을 황제국과 차현주가 달래주었다. 동방을 나간 이진수는 미디어랩 시청각실로 갔다. 시청각실에는 비디오를 원하는 만큼 빠르게, 혹은 느리고 돌려 볼 수 있는 장비가 있었다. 그는 테이프를 계속 돌려가며 동작의 메커니즘을 파악했다.

동작을 연구하는 이진수는 이미 어제 일을 완전히 잊었다. 어제도 오종석이 놀린 것보다 작업물이 마음에 들지 않아 화가 났던 게 더 컸었다.

이진수는 자기 행동에 사람들이 이렇게 신경을 쓸 거라고는 생각하지 못했다. 그는 도리어 고맙다고 말하고 싶었지만, 그 말이 나오지는 않았다. 그냥 테이프를 들고나올 수밖에 없었다.

테이프를 수도 없이 돌려보며 연구를 마친 그는 다음날 다시 동방으로 돌아왔다. 그는 아무 일도 없었다는 듯 애니메이션 엔진에 걷는 동작을 업데이트했다. 오종석도, 황제국도, 누구도 그 얘기를 다시 꺼내지 않았다. 모든 것은 다시 평소대로 돌아왔다.

마침내 수수깡 캐릭터가 제대로 뚜벅뚜벅 저벅저벅 걷기 시작했다. 이진수는 모니터 속에서 세상 끝까지 걷겠다는 듯 힘차게 팔을 흔들며 계속해서 걸어 나가는 캐릭터를 한없이 바라보았다. 사람들로부터 생각지도 못한 도움을 받은 그는 한 단계 성장한 느낌이었다.

이진수는 더욱 열정적으로 게임 엔진 개발에 매달렸다. 황제국은 이진수의 작업물과 자신의 작업물을 합쳐 최소한의 기능을 갖춘 게임 엔진을 만들었다. 황제국은 수업도 모두 빠져가며 며칠을 매달려 프로토타입 제작에 열을 올렸다.

어느덧 1학기가 슬슬 끝나가는 6월 초.

드디어 스팀펑크 만주 웨스턴 FPS의 프로토타입이 완성되었다.

오류신고

아래 오류에 해당하는 버튼을 클릭해 주시면 빠른 시일내 수정작업이 이루어 집니다.

갓겜의 제국 1998 - 갓겜의 제국-46화
[46 / 총265]

갓겜의 제국 1998 - 갓겜의 제국-46화

연재 총 265화