wolfenstein

Chapter 0.을 읽기 시작하는 순간 경이로움으로 가득 차기 시작했습니다. 컴퓨터 게임이 2D에서 3D로 넘어가는 초창기 시절, 메모리도 CPU도 지금과는 비교도 안 될 정도 성능이 떨어지던 시점에 개발 된 게임이 30년이 지난 지금까지 회자 되면서 화면과 CPU만 있다면 어디든 이식 되는 이유는 명확했습니다.

지금 우리는 사용 엔진을 통해서 하드웨어에 대한 고민을 크게 하지 않은 채 게임을 만들고, 웹 개발을 하면서 크롬에 탭을 40개씩 열어가면서 램을 2,3GB 씩 사용하고 있습니다. 하지만 당시 개발자들은 그래픽 가속기는 커녕 부동소수점 계산기도 없는 컴퓨터에서 단 640 KiB의 메모리를 게임을 돌리기 위해 코드를 작성해야 했습니다. 30*80의 모니터도 조금 편하게 사용하기 위해 여러 트릭을 사용하고, 심지어 입출력 장치들 각각의 다른 규격을 쓰고 있고, 음악재생을 위한 사운드 카드도 통일 안 된 시기여서 하드웨어에 맞춰서 하나하나 코드를 작성해야 했습니다.

처음부터 끝까지 기술적인 이야기로 가득차 있어 아키텍쳐나 하드웨어에 크게 관심이 없는 분들은 1장 넘어로 여행을 떠나기 책입니다. 컴퓨터 메모리 구조, 버스, 맵핑 등 다양한 하드웨어 적 지식이 총 출동하고 있습니다.

번역 및 문체

대체적으로 큰 무리 없이 읽히는 수준의 번역이었습니다. 중간에 한 두개 정도 원문이 궁금해지는 부분이 있었지만 내용 이해에는 전혀 문제 없는 수준의 번역이었습니다.

난이도

컴퓨터 공학에 대한 지식이 없이는 보기 힘들정도로 하드웨드에 대한 내용들을 다루고 있습니다. 하드웨어까지 고려한 프로그래밍이 뭔지 맛 보고 싶다면 좋은 책입니다.

추천대상

존 카맥이 왜 천재라고 불리는지 궁금하고, 어떤 프로그래밍을 했는지 궁금하면 꼭 보길 바랍니다.


한빛미디어 2021 도서 서평단 "나는 리뷰어다"의 일원으로 도서를 제공받아 작성한 리뷰입니다.