소설리스트

회귀자의 갓겜 제작법-67화 (68/485)

067. 노력의 댓가

방명록에 있는 글을 보고 경악한 상혁과는 다르게, 민준은 방명록을 한번 슥 보고는 대수롭지 않다는 듯 무심하게 말했다.

“왜 그렇게 놀라?”

“뭐? 넌 그럼 저게 안 무섭냐?”

“왜? 프로그래머는 집념이 좀 있어야 돼. 그래야 코딩하다 막혀도 포기 안하고 계속 도전하지.”

“저건 집념이 아니라 집착이라고 부르는 거라고!”

상혁의 경악에 찬 목소리를 듣고도 민준은 방명록을 쓴 수수께끼의 인물이 마음에 들었는지 홈페이지의 소스코드를 열고는 편집을 하기 시작했다.

“너, 뭐하냐?”

“뭐하긴, 프로그래밍 문제 남기지.”

“잉? 이 홈페이지 들어오려면 니가 만든 코드를 뚫어야 한다며? 그럼 이미 여기 들어와 있다는 사실로 어느 정도 실력은 증명한 거 아냐?”

“그건 그때 컴퓨터실 보급사양 기준으로 짠 코드라서 그렇게 뚫는 게 어렵지 않아. 제대로 실력을 테스트하려면 문제도 제대로 된 걸 내야겠지.”

“얼마나 어려운 거로 낼 건데?”

“중급.”

“뭐?!”

오랜시간 호흡을 맞춘 상혁은 대충이나마 민준이 프로그래머의 실력을 구분하는 기준을 알고 있었다.

그리고 상혁이 알고 있는 민준의 중급은, 일반적으로 말하는 ‘매우 재능있는’ 프로그래머를 말하는 것이었다.

“너한테 ‘오빠’라고 할 정도면 나이가 어린 여자애 아닐까? 풀 수 없으면 어떡하게?”

“실력이 아니라 재능의 문제니까 괜찮아.”

“그게 그거 아냐?”

“다르지. 예를 들어 어떤 프로그래머가 일을 하는데 남들도 쉽게 파악할 수 있는 코드로 버그 없이 핵 방어 잘하면서 깔끔한 코드를 짰다? 그건 실력이 좋은 거야. 근데 일반적으로 알려진 해결법으로 접근했을 때 문제가 발생하는 코드를 다른 해석으로 접근해서 해결했다? 그건 재능이 좋은 거지.”

“아, 대충 어떤 느낌인지 알겠어.”

“그렇다고 해서 지금 수준으로 해결 불가능한 문제는 아니니까 정말로 집념이 있다면 충분히 풀겠지.”

그렇게 말한 민준은 마지막으로 문제를 풀었을 때 접근 가능한 페이지에 연락처를 남길 수 있는 입력란을 만들고는 홈페이지 수정을 완료했다.

“이제 기다리기만 하면 되겠군.”

“흠···. 그럼 연락 올 때까지 다른 지원자 면접은 어떻게 할래?”

상혁이 묻자 민준이 말했다.

“그건 보류. 내 예상대로면 어느 정도 실력 있는 녀석도 일주일 정도는 걸릴 건데, 그동안은 네가 만든 빌어먹을 프로토타입 코넥트 작업 좀 해놔야지.”

“일주일이나 걸릴까?”

“사실 방법을 알고 있으면 그렇게 어려운 문제는 아냐. 2020년이야 프로그래머가 질문만 올리면 답변해주는 괴물이 넘치는 스택 오버플로우 같은 사이트가 있으니까 거기서 질문 올리면 금방 풀리겠지. 근데 지금은 그런 곳이 마땅치 않으니까 일주일 정도로 잡은 거고.”

“오케이. 풀기 불가능한 것만 아니면 나는 상관없어. 어찌 됐건 멤버를 뽑는 게 목적이니까.”

그렇게 말한 상혁은 뭔가가 떠오른 듯 민준에게 질문을 던졌다.

“혹시 이 홈페이지 방문한 애가 민솔이는 아니겠지?”

“민솔이? 그 선문중학교 게임 동아리 프로그래머 박민솔?”

“어. 홈페이지에 오빠라고 써놓은 거 보니까 갑자기 민솔이가 떠오르네.”

상혁의 질문을 받은 민준은 잠시 고민하더니 입을 열었다.

“그건 아닐걸. 내가 아는 박민솔은 3년 전에 프로그래밍 초보 수준이었어. 물론 같이 작업하면서 꽤 많이 가르치기도 했고, 재능도 있는 아이였지만 걔가 3년 안에 내 코드를 뚫고 여기 접속한다고?”

민준은 고개를 저었다.

“그건 불가능에 가깝지.”

***

어두운 방. 모니터에서 나오는 어슴푸레한 불빛만이 방안의 유일한 빛인 공간에서, 한 소녀가 열심히 키보드를 두드리고 있었다.

언제 잘랐는지보다 언제 감았는지를 먼저 궁금하게 만들 것 같은 떡진 머리를 가진 소녀는 두 개의 모니터에 코드를 띄워놓고 연신 무언가를 썼다 지웠다를 반복했다.

그리고는 머리를 긁적거리며 중얼거렸다.

“이게 아닌데···.”

그녀는 연신 고개를 돌려가며 양쪽을 비교하기 시작했다.

그녀가 보고 있는 양쪽 모니터의 한쪽에는 민준이 3년 전에 홈페이지에 게시한 소스코드가, 다른 쪽에는 민준이 얼마 전에 올린 프로그래밍 문제가 띄워져 있었다.

전혀 다른 두 코드지만, 그녀는 마치 문제의 답이 오른쪽에 띄워놓은 소스코드에 있기라도 한 것처럼 계속 소스코드를 바라보며 중얼 거렸다.

-구륵구륵-

얼마나 굶은 걸까.

그녀는 배에서 느껴지는 익숙한 감각에 자신이 컵라면에 물을 부어놓았다는 사실을 떠올렸다.

책상위에 놓은 컵라면은 이미 팅팅불어 국물을 찾아볼 수 없었지만 그녀는 익숙한 듯 포크로 면을 떠 입에 밀어 넣었다.

숟가락으로 퍼먹는 게 나을만큼 불어버린 라면이 맛있을 리 없었지만, 그녀는 꾸역꾸역 식사를 마쳤다.

모니터에서는 전혀 시선을 떼지 않은 채로.

그리고 옆에 쌓여있는 컵라면 용기의 산에 빈 라면 용기를 던져 넣고는 다시 키보드를 두드리기 시작했다.

“흐흐흐···. 조금만 기다려요. 민준오빠···. 내가 금방 문제 풀고 연락할게요···.”

어둠속에서 열심히 민준이 낸 문제를 풀기 위해 노력하는 그녀. 그녀의 정체는 민준이 절대 아닐 거라고 말했던 선문중학교 게임부의 프로그래머, 박민솔이었다.

물론 그녀가 고교 3년간 민준이 낸 문제를 풀 정도로 프로그래밍 실력이 급상승하는 건 불가능에 가까운 일이었다.

민준이 그녀를 만났을 당시의 그녀는 어느 정도의 재능은 가지고 있었지만, 실력은 그렇게 뛰어난 편이 아니었기 때문에.

그러나 민준의 가정은 어디까지나 그녀가 ‘정상적’인 프로그래밍 공부를 했을 때에 한정된 가정이었고, 그녀의 행동은 ‘정상’의 범위를 한없이 벗어나 있었다.

그녀는 졸업 전부터 상혁의 팀에 합류하여 함께 게임을 만들던 서연을 엄청나게 부러워하면서도, 자신의 실력이 민준을 보조하기에 한없이 부족한 것을 잘 알고 있었기에 서연을 따라 팀에 합류하지 않았다.

물론 친한 친구인 서연에게 부탁하면 서연이 어떻게든 자신을 팀에 넣게 해줄 것임을 알고 있었지만, 그런 형태의 가입은 그녀에게 전혀 의미가 없었기 때문이었다.

‘같이 게임을 만들고 싶어.’

아주 잠깐의 만남이었지만 민준은 그녀에게 프로그래머가 가질 수 있는 능력의 한계가 없음을 보여준 존재였다.

그리고 그녀는 그런 민준을 한없이 동경했다.

“저, 고등학교 진학하지 않을래요.”

부모님의 엄청난 반대를 무릅쓰고 고교 진학을 포기한 민솔은 졸업 이후로 오직 프로그래밍 공부에만 전념했다.

민준이 ‘익스트림 발리볼’에 남긴 소스코드를 마치 교과서처럼 참고하면서.

물론 그 짧은 소스코드를 가지고 프로그래밍이 모든 것을 배울 수 있는 것은 아니었지만, 그녀는 민준의 코드를 수없이 반복해서 보면서 민준이 어떤 사고방식으로 코드를 짜고, 어떤 스타일로 코딩을 하는지 머릿속으로 수없이 상상하며 프로그래밍을 공부했다.

코드에 달린 주석 하나하나가 자신의 곁에서 민준이 알려주는 조언이라고 생각하면서.

방에 틀어박힌 지 3개월이 지난 시점에, 게임에 포함되어있는 소스코드를 외울 정도로 반복해서 본 그녀는 나머지 소스코드를 보기 위해 히든 스테이지 클리어에 들어갔다.

그리고 수없이 패배를 하면서 좌절감에 빠졌다.

게임 실력이 딸려서 코드를 더 볼수 없다니, 그건 너무 잔인하지 않은가.

목표가 막히니 몸까지 아픈 느낌이 들어 않아 누운 민솔은 비몽사몽한 가운데서 민준의 목소리로 울리는 환영을 들은 듯한 착각에 빠졌다.

‘코더니까 코더답게 해결해야지.’

물론 장난으로 절대 깰 수 없는 스테이지를 만들어뒀을 수도 있었겠지만 그녀가 아는 민준은 그런 성격의 인간이 아니었다.

마치 무언가에 홀린 것처럼, 게임을 뜯어본 그녀는 마침내 나머지 소스코드가 올라가 있는 홈페이지의 주소를 알아낼 수 있었고, 이제는 아무도 들어오지 않는 자신의 방안에서 비명을 지르며 방방 뛰어다녔다.

그리고 다시 프로그래밍 공부에 들어갔다.

그 긴 시간 동안, 존경이 애착이 되고 애착은 집착이 되었다.

그렇게 3년 동안 노력한 그녀의 코딩 스타일은, 코드에 달리는 주석 하나하나까지 민준의 스타일을 완전히 닮게 되었다.

민준이 자신도 모르게 자신의 클론 하나를 뚝딱 만들어낸 순간이었다.

그때, 불어터진 컵라면이나마 뱃속에 뭔가를 밀어 넣어서 그런지 그녀의 머릿속이 빠르게 회전했다.

‘혹시 이건가?’

일주일이나 매달렸지만 풀 수 없었던 문제 치고는 너무 어이없는 해결법이었지만 그녀의 직감은 이것이 정답이라고 말하고 있었다.

“역시.”

잠시 후, 그녀의 예상대로 문제의 해답을 입력하자 뜨는 페이지를 보며, 민솔은 입가에 작은 미소를 띠웠다.

그리고는 자신과 부모님 외에는 아무도 모르는 자신의 전화번호를 입력했다.

이제 완료만 누르면 되는 상황에서, 그녀는 잠시 숨을 고르며 생각에 잠겼다.

‘정말 괜찮을까···.’

3년 동안 하루 3~4시간만 자면서 죽어라 공부했지만 그녀가 생각하기에 자신의 실력은 아직 한참 모자랐다.

심지어 인터넷에 상혁이 낸 구인글을 봤음에도 거기에 지원하기를 망설였을 정도로.

그러나 그녀의 고민은 그리 길지 않았다.

단 한명밖에 접속할 수 없는 홈페이지.

거기에 민준이 자신만을 위한 문제를 내 놓았고 그것을 자신이 풀었다는 사실이 그녀에게 용기를 주었기 때문이었다.

결국 그녀는 마우스를 클릭하여 확인 버튼을 누르고 말았다.

이제는 생각하면 얼굴보다 코드가 먼저 떠오르는 동경의 상대, 민준의 목소리를 듣게 되길 기대하면서···

***

“진짜로 딱 일주일 걸렸네?”

같은 시각, 전화번호가 입력된 페이지를 보며 상혁이 말하자, 민준이 미소를 지었다.

“대충 그럴 거 같았거든.”

“연락할까?”

“해야지. 해답으로 입력한 코드를 보니까 아주 마음에 들더라고.”

“니가 그 정도로 말할 정도야?”

“어. 솔직히 이유는 모르겠지만 내가 작업하는 스타일이랑 엄청 비슷해. 같이 작업하면 손 거의 안타도 되겠더라. 물론 지금 기준 코드에 익숙한 거니까 모르는 부분은 좀 가르쳐야 하겠지만.”

“그건 진짜 다행이네.”

그렇게 말하며, 상혁은 휴대폰의 버튼을 눌렀다.

그러자, 마치 기다리고 있기라도 한 것처럼, 첫 번째 신호가 채 끝나기도 전에 수화기 건너편에서 다급한 느낌의 목소리가 들려왔다.

“아!네!?!여여여여보세요?! 민준오빠?!?”

“어? 목소리가 귀에 익은데? 너 혹시 민솔이니?!”

“아, 민준오빠가 아니라 다른 오빠구나. 네. 왜요?”

갑자기 차갑게 식어버린 듯한 목소리에 상혁이 당황하며 말했다.

“어?!어···. 그, 홈페이지에 연락처 남 긴거 너 아냐?”

“맞아요. 근데 왜 민준오빠가 아니라 다른 오빠가 전화하는 건데요?”

“내 이름은 ‘다른 오빠’가 아니라 상혁이거든?!”

“아, 넵. 다른 오빠. 혹시 민준오빠 있으면 바꿔주실래요? 나 오빠랑 이야기 오래 하고 싶지 않은데···.”

“확 끊어버릴까 보다.”

그렇게 이야기하면서도, 상혁은 휴대폰을 민준에게 건네주었다.

“민솔이?”

“오오오오오오빠!?”

“상혁이가 혹시 너일지도 모른다고는 했는데 진짜 너였구나. 코드 푸느라 고생 많았겠다.”

“네네네네넵! 엄청 노력했습니다!”

“어. 연락처 남겼다는 건 같이 일할 생각 있다는 거지?”

“네네네넵! 당근당근당근이요!”

“어 그럼 내일 여기로 올래?”

“그그그···. 그래도 돼요? 저 아직 한참 더 배워야 하는데!!”

“내가 올린 문제 풀 정도면 충분히 작업 가능한 수준이고 그거보다 어려운 건 내가 알려줄 거니까 괜찮아. 안 그래도 지금 작업할거 많아서 사람 못 구하면 어쩌나 걱정이었는데 네가 그렇게 성장했을 줄 생각도 못했다.”

“가,감사합니다!”

“어. 그래 그럼 푹 쉬고 내일 보자.”

민준이 그렇게 말하며 전화를 마치려 하자, 수화기 건너편에서 우당탕 하는 소리와 민솔이 소리쳤다.

“오오오,오빠!”

“어?”

“혹시 지금 가도 되요?”

“어? 지금?”

민준은 시계를 보았다.

벽에 걸린 시계는 지금이 저녁 8시임을 가리키고 있었다.

“지금 저녁인데?”

“저, 오빠가 만든 코드가 보고 싶어요!”

민솔은 ‘민준’이 아니라 민준이 짠 ‘코드’가 보고 싶다고 이야기했고, 민준은 그런 그녀의 대답이 마음에 들었는지 미소를 지으며 그녀의 질문에 대답했다.

“어. 그럼 지금 택시타고 와. 택시비는 내가 줄 테니까.”

민준의 말이 끝나자마자 수화기에서 통화가 끊어지는 소리가 들렸다.

인사도 하지 않고 바로 뛰쳐나가기라도 한 것처럼.

그러자 민준은, 들고 있던 휴대폰을 상혁에게 돌려주며 매우 만족스런 표정으로 말했다.

“이게 내가 말한 ‘찐’이라는거야.”

그것이 온 나라가 월드컵 준비로 후끈 달아오르던 5월의 어느 날, PTW의 두 번째 프로그래머가 확정되는 순간이었다.

***

3년 만에 민준이 ‘찐’이라고 부를정도로 성장해서 상혁과 민준을 놀라게 만든 민솔은 머리도 감지 않은 츄리닝 차림으로 학교에 나타나 또 한번 상혁을 경악하게 만들었다.

그리고는 자신에게 오랜만이라며 인사하는 서연의 인사를 깔끔하게 씹더니, 민준에게 달려가 환하게 인사하며 ‘코드 보여주세요!’라고 외쳐 팀원들을 충격에 빠트렸다.

오죽하면 팀 내에서 가장 비정상이라고 평가받는 지수가 상혁의 옷깃을 당기며 ‘닝겐, 왜 노숙자가 부실에 있는 거냐?’ 라고 물어볼 정도로.

그렇게 민솔의 합류과정에서 발생한 소소한 에피소드를 제외하면, 결과적으로 민솔의 합류는 팀에 매우 긍정적인 효과를 가져왔다고 볼 수 있었다.

그녀의 합류 덕에 민준이 하드웨어 개발 쪽 작업만 전담하게 되면서, 동시에 ‘중2병 배틀러’의 데이터 작업을 위한 소프트웨어 개발도 함께 진행하게 될 수 있었기 때문에.

덕분에 상혁이 만들고자 하는 게임의 알파 버전 제작은 순조롭게 진행되었다.

애당초 ‘코넥트’의 목표가 발매가 아니라 구동되는 시연 버전을 만드는 것이었기에, 목표 사양을 맞추는 것은 그리 어려운 것이 아니었다.

어찌됐건 원리만 알고 있으면 성능 좋고 비싼 부품을 마구 때려 박아 만들 수 있는 장비긴 했으니까.

물론 그것을 키넥트와 같은 17만원대의 가격으로 낮추고 대량생산 체계를 갖추며 티비에 올릴만한 크기로 줄이는 게 목표였다면 절대 성공이 불가능했겠지만, 군에 납품할 정도의 가성비와 내구도, 크기를 갖추게 하는 것은 당시 하드웨어 수준으로도 어찌어찌 가능한 수준이었기 때문이었다.

그렇게 하드웨어 개발을 병행하면서, 민준이 프로토타입에서 구동되는 모션 촬영 프로그램을 완성하자 게임의 제작 진도에는 한층 탄력이 붙게 되었다.

민준이 코넥트 구동을 위한 프로그램을 개발하는 동안, 상혁은 업계 탑급의 실력 있는 모델러와 애니메이터, 이펙터를 구해 외주인력으로 합류시키고 민솔과 함께 X박스 본체에서 돌아갈 게임 엔진을 준비했다.

그렇게 최소한의 구동을 위한 시연 버전 개발을 위해 쓴 시간이 무려 8개월.

이전에 만들었던 게임의 알파 버전 개발 기간과는 확연히 차이 날 정도의 긴 시간이었다.

“오오! 돌아간다!”

VR이나 AR기술에 익숙한 상혁이나 민준과는 다르게, 자신의 움직임에 따라 모니터 속의 모델링이 움직이는 것을 본 팀원들은 마치 미래 기술이라도 본 것처럼 웅성 거리기 시작했다.

상혁이 목을 까딱거리자 화면 속의 캐릭터도 목을 까딱거렸다.

“오오오오!! 오빠! 만세 해봐요 만세!”

그 모습을 보고 흥분한 서연이 소리 지르자 상혁은 미소를 지으며 만세를 했고 화면속의 캐릭터도 상혁을 따라 만세 자세를 취했다.

“오오오오오!!”

‘리액션이 재밌네.’

그렇게 속으로 생각하며, 상혁이 옆의 컴퓨터에 앉아있는 민솔에게 눈짓을 보내자, 화면속의 목각인형같은 모델링이 화려한 로브를 입은 마법사의 모양으로 바뀌었다.

그리고 동시에, 화면 저편에 있는 캐릭터도 모양이 마녀 복장을 입은 소녀의 모습으로 바뀌었다.

“오오오! 좀 게임 같아!”

“아직 테스트 버전이라 캐릭터도 스크립트로 변경해야 하고 모델링도 강제로 부른 거지만···. 뭐, 일단 어느 정도 배틀 시연 자체는 가능하니까 게임이라고 불러도 되겠지.”

그렇게 말한 상혁은 자신을 삥 둘러싼 사람들을 보며 씨익 웃었다.

“그럼 지금부터 차세대 동작 인식 장비 코넥트를 이용한 게임 시연이 있겠습니다.

지수야, 준비 됐어?”

상혁이 말하자 옆에 준비된 또 한 대의 장비 앞에 서 있는 지수가 웃으며 답했다.

“와라! 닝겐! 네 상대는 바로 이 몸이다!”

그러자 미리 입력되어있는 대사를 인식한 프로그램이 지수의 캐릭터에 붉은 색의 오오라를 출력했다.

그것은 공격력 버프가 정상적으로 동작한다는 이야기였다.

그러자 이번엔 상혁이, 씨익 웃으며 대사를 외쳤다.

“좋다! 어리석은 네 녀석을 한줌의 재로 만들어주마!”

상혁의 캐릭터의 양손이 불꽃으로 휩싸이는 동시에 두 사람의 손이 어지러이 움직이며 캐스팅 동작에 들어갔다.

그리고 잠시 후, 팀원들은 그 오랜 시간을 들이면서까지 상혁이 어째서 이 게임을 개발하고 싶어 한 것인지, 두 사람의 싸움을 보며 바로 이해할 수 있었다.

0