추억 속의 레트로 게임을 모던 개발 툴로 제작하는 거의 모든 방법
잠시 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비트 컴퓨터의 각종 제약을 극복하며 게임 제작에 필요한 개발 스킬을 익히는 것이 이 책의 핵심이다. 엔진과 프레임워크에 매몰되어 초심을 잃은 게임 개발자라면, 이 책을 통해 ‘세대를 초월한 프로그래밍의 재미’를 되찾고 다시 타오를 수 있을 것이다.