잠시 1980년대 말로 돌아가자. 당신은 지금 8비트 컴퓨터 앞에 앉아 ‘MSX BASIC 게임’ 같은 책을 보고 있다. 의미도 모른 채 한 글자 한 글자 코드를 입력한 끝에 "RUN"을 치자 게임이 실행될 때의 감격, 하지만 곧 게임 중 뜬 "Syntax error" 앞에 좌절했던 기억. 그땐 게임이 어떻게 돌아가는지, 에러가 왜 나는지도 몰랐지만, 그 환희의 순간을 잊지 못해 지금도 게임을 만들거나 플레이하고 있지는 않은가. 그때는 완성하지 못했던 MSX 게임, 지금이라면 완성할 수 있다.
이 책은 크게 MSX와 MS-DOS를 중심으로, 레트로 플랫폼에서 작동 가능한 게임을 오늘날의 도구와 C 언어로 개발하는 방법을 파헤친다. 이를 위해 저자는 MSX 하드웨어 스펙이나 MS-DOS의 메모리 모델 등 오늘날 찾기 어려운 ‘과거의’ 지식을 치밀하게 발굴하고 정리해 현세대 개발자들이 이해할 수 있게 설명한다. 버전 이슈를 막고 실습 편의를 높이기 위해, 각종 툴을 포함한 배포판, 예제 소스 코드, 동영상, 도구 링크 등의 자료를 온라인으로 제공한다.
MSX와 MS-DOS용 코드를 작성하고 빌드하는 데에서 그치지 않고, 이를 윈도우, 안드로이드, MS-DOS(MSX의 경우) 등으로 포팅하며 크로스 플랫폼 프로그래밍 기법을 익힌다. 또한 로직 작성만큼이나 디버깅을 중요시하여, 곳곳에 동적 디버깅을 도입해 개발 시간을 줄이고 플랫폼에 대한 이해도 높일 수 있게 했다. 마지막으로 MSX와 MS-DOS에서의 개발 방식을 확장해 코모도어 64, 패미컴, 아미가 등 10개 레트로 플랫폼에서 게임을 개발하는 방법도 개괄함으로써 유일무이한 레퍼런스로서의 가치를 노정한다.
386, 486도 아니고 8비트 컴퓨터의 각종 제약을 극복하며 게임 제작에 필요한 개발 스킬을 익히는 것이 이 책의 핵심이다. 엔진과 프레임워크에 매몰되어 초심을 잃은 게임 개발자라면, 이 책을 통해 ‘세대를 초월한 프로그래밍의 재미’를 되찾고 다시 타오를 수 있을 것이다.
서강대학교에서 컴퓨터공학과 물리학을 전공했으며, JCE(현 조이시티) 온라인 게임 서버 프로그래머, 라인의 백엔드 플랫폼 프로그래머 그리고 모바일 게임 개발 회사 대표를 거쳐 현재 프리랜서로 활동 중이다. 안 되는 걸 되게 하는 것에 관심이 많으며, 고전 어드벤처 게임을 좋아해 번역되지 않은 다수의 명작 어드벤처 게임의 한국어화 패치를 제작했다.
주요 저서로는 한빛미디어에서 출간한 『CGSF를 활용한 게임 서버 제작』(2014), 『CGSF 파헤쳐 보기』(2014), 『C++ 개발자를 위한 WIN32 오픈소스 라이브러리 100』(2015), 『SDL과 C++를 이용한 크로스 플랫폼 프로그래밍』(2015), 에이콘에서 출간한 『C++로 나만의 운영체제 만들기』(2018) 등이 있다. 번역서로는 『데이터베이스 첫걸음』(한빛미디어, 2016)과 『Game Programming in C++』(에이콘, 2019)가 있다.